diff options
Diffstat (limited to 'plugins-unmaintained/Themes/Teracopy')
51 files changed, 3707 insertions, 0 deletions
diff --git a/plugins-unmaintained/Themes/Teracopy/DebugEngineMacro.h b/plugins-unmaintained/Themes/Teracopy/DebugEngineMacro.h new file mode 100644 index 0000000..4582010 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/DebugEngineMacro.h @@ -0,0 +1,28 @@ +/** \file DebugEngineMacro.h +\brief Define the macro for the debug +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef DEBUGENGINEMACRO_H +#define DEBUGENGINEMACRO_H + +#ifdef WIN32 +# define __func__ __FUNCTION__ +#endif + +/// \brief Macro for the debug log +#ifdef ULTRACOPIER_PLUGIN_DEBUG + #if defined (__FILE__) && defined (__LINE__) + #define ULTRACOPIER_DEBUGCONSOLE(a,b) emit debugInformation(a,__func__,b,__FILE__,__LINE__) + #else + #define ULTRACOPIER_DEBUGCONSOLE(a,b) emit debugInformation(a,__func__,b) + #endif +#else // ULTRACOPIER_DEBUG + #define ULTRACOPIER_DEBUGCONSOLE(a,b) void() +#endif // ULTRACOPIER_DEBUG + +#endif // DEBUGENGINEMACRO_H + + + + diff --git a/plugins-unmaintained/Themes/Teracopy/Environment.h b/plugins-unmaintained/Themes/Teracopy/Environment.h new file mode 100644 index 0000000..265a5a6 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Environment.h @@ -0,0 +1,10 @@ +/** \file Environment.h
+\brief Define the environment variable and global function
+\author alpha_one_x86
+\licence GPL3, see the file COPYING */
+
+#include "Variable.h"
+/// \brief The global include
+#include "StructEnumDefinition.h"
+#include "DebugEngineMacro.h"
+
diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/ar/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/ar/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/ar/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/de/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/de/translation.ts new file mode 100644 index 0000000..e40fe09 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/de/translation.ts @@ -0,0 +1,93 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="de" sourcelanguage="en"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation>Total: %1 von %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation>%1 von %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation>%1% erledigt</translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation>&Mehr</translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation>...</translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation>&Pause</translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation>überspringen (&S)</translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation>Abbrechen (&C)</translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">unterstützen Ultracopier</span></a></p></body></html></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation>Datei hinzufügen</translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation>Ordner hinzufügen</translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation>Datei (en) verschieben</translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation>Ordner verschieben</translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation>Datei (en) kopieren</translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation>Verzeichnis kopieren</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/el/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/el/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/el/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/en/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/en/translation.ts new file mode 100644 index 0000000..be91e0b --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/en/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="en"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/es/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/es/translation.ts new file mode 100644 index 0000000..221091b --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/es/translation.ts @@ -0,0 +1,93 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="es" sourcelanguage="en"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished">Total: %1 de %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished">%1 de %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished">%1% hecho</translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation>Más</translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation>Pausa</translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation>Omitir</translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation>Cancelar</translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Apoyar Ultracopier</span></a></p></body></html></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation>Añadir archivo</translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation>Añadir carpeta</translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation>Mover archivo(s)</translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation>Mueva la carpeta</translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation>Copia el archivo(s)</translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation>Copia la carpeta</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/fr/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/fr/translation.ts new file mode 100644 index 0000000..e9c7f41 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/fr/translation.ts @@ -0,0 +1,94 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="fr" sourcelanguage="en"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation>Total: %1 sur %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation>%1 sur %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translatorcomment>Exemple: 90% fait</translatorcomment> + <translation>%1% fait</translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation>&Plus</translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation>...</translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation>&Pause</translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation>&Passer</translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation>&Anuler</translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Supporter Ultracopier</span></a></p></body></html></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation>Ajouter un fichier</translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation>Ajouter un dossier</translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation>Déplacer des fichier(s)</translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation>Déplacer un dossier</translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation>Copier des fichier(s)</translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation>Copier un dossier</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/hi/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/hi/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/hi/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/hu/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/hu/translation.ts new file mode 100644 index 0000000..98a96e4 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/hu/translation.ts @@ -0,0 +1,93 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="hu"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation>Összesen: %1 / %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation>%1 / %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation>%1% kész</translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation>&Több</translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation>...</translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation>&Szünet</translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation>&Kihagy</translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation>&Mégse</translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Támogasd az Ultracopier-t</span></a></p></body></html></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation>Fájl hozzáadása</translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation>Mappa hozzáadása</translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation>Fájl(ok) mozgatása</translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation>Mappa mozgatása</translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation>Fájl(ok) másolása</translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation>Mappa másolása</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/id/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/id/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/id/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/it/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/it/translation.ts new file mode 100644 index 0000000..a46866d --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/it/translation.ts @@ -0,0 +1,93 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="it" sourcelanguage="en"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation>Totale: %1 di %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation>%1 di %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation>%1% fatto</translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation>Alt&o</translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation>...</translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation>&Pausa</translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation>&Salta</translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation>&Annulla</translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Supporto Ultracopier</span></a></p></body></html></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation>Aggiungi file</translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation>Aggiungi cartella</translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation>Sposta file</translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation>Sposta la cartella</translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation>Copia file</translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation>Copia la cartella</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/ja/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/ja/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/ja/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/ko/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/ko/translation.ts new file mode 100644 index 0000000..2231fde --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/ko/translation.ts @@ -0,0 +1,93 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="ko_KR"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="+95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished">전체: %3 / %2 {1 ?}</translation> + </message> + <message> + <location line="+1"/> + <source>%1 of %2</source> + <translation type="unfinished">%1 / %2</translation> + </message> + <message> + <location line="+154"/> + <source>%1% done</source> + <translation type="unfinished">%1% 완료</translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="+159"/> + <source>&More</source> + <translation type="unfinished">&자세히</translation> + </message> + <message> + <location line="+13"/> + <source>...</source> + <translation type="unfinished">...</translation> + </message> + <message> + <location line="+38"/> + <source>&Pause</source> + <translation type="unfinished">&일시 중지</translation> + </message> + <message> + <location line="+22"/> + <source>&Skip</source> + <translation type="unfinished">&건너뛰기</translation> + </message> + <message> + <location line="+19"/> + <source>&Cancel</source> + <translation type="unfinished">&취소</translation> + </message> + <message> + <location line="+30"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Ultracopier 지원</span></a></p></body></html></translation> + </message> + <message> + <location line="+27"/> + <source>Add file</source> + <translation type="unfinished">파일 추가</translation> + </message> + <message> + <location line="+9"/> + <source>Add folder</source> + <translation type="unfinished">폴더 추가</translation> + </message> + <message> + <location line="+9"/> + <source>Move file(s)</source> + <translation type="unfinished">파일 이동</translation> + </message> + <message> + <location line="+9"/> + <source>Move folder</source> + <translation type="unfinished">폴더 이동</translation> + </message> + <message> + <location line="+9"/> + <source>Copy file(s)</source> + <translation type="unfinished">파일 복사</translation> + </message> + <message> + <location line="+9"/> + <source>Copy folder</source> + <translation type="unfinished">폴더 복사</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/nl/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/nl/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/nl/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/no/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/no/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/no/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/pl/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/pl/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/pl/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/ru/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/ru/translation.ts new file mode 100644 index 0000000..322f33b --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/ru/translation.ts @@ -0,0 +1,93 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="ru" sourcelanguage="et"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished">Всего: %1 из %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished">%1 из %2</translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished">%1% сделанный</translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation>больше</translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation>пауза</translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation>пропускать</translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation>отменить</translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">поддержка Ultracopier</span></a></p></body></html></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation>Добавить файл</translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation>Добавить папку</translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation>Перемещение файла(ов)</translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation>Перемещение папки</translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation>Копировать файл(ы)</translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation>Копировать папку</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/th/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/th/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/th/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/tr/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/tr/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/tr/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/Languages/zh/translation.ts b/plugins-unmaintained/Themes/Teracopy/Languages/zh/translation.ts new file mode 100644 index 0000000..a022e31 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Languages/zh/translation.ts @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="95"/> + <source>Total: %1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="96"/> + <source>%1 of %2</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="250"/> + <source>%1% done</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interfaceCopy</name> + <message> + <location filename="../../interface.ui" line="159"/> + <source>&More</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="172"/> + <source>...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="210"/> + <source>&Pause</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="232"/> + <source>&Skip</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="251"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="281"/> + <source><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="308"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="317"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="326"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="335"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="344"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="353"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Teracopy/StructEnumDefinition.h b/plugins-unmaintained/Themes/Teracopy/StructEnumDefinition.h new file mode 100644 index 0000000..c1758f4 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/StructEnumDefinition.h @@ -0,0 +1 @@ +#include "../../../StructEnumDefinition.h" diff --git a/plugins-unmaintained/Themes/Teracopy/TransferModel.cpp b/plugins-unmaintained/Themes/Teracopy/TransferModel.cpp new file mode 100644 index 0000000..24812a0 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/TransferModel.cpp @@ -0,0 +1,528 @@ +#include "TransferModel.h" + +#define COLUMN_COUNT 3 + +// Model + +TransferModel::TransferModel() +{ + iconStart=QIcon(":/Themes/Teracopy/resources/player_play.png"); + iconPause=QIcon(":/Themes/Teracopy/resources/player_pause.png"); + iconStop=QIcon(":/Themes/Teracopy/resources/checkbox.png"); + currentIndexSearch=0; + haveSearchItem=false; + facilityEngine=NULL; +} + +int TransferModel::columnCount( const QModelIndex& parent ) const +{ + return parent == QModelIndex() ? COLUMN_COUNT : 0; +} + +QVariant TransferModel::data( const QModelIndex& index, int role ) const +{ + int row,column; + row=index.row(); + column=index.column(); + if(index.parent()!=QModelIndex() || row < 0 || row >= transfertItemList.count() || column < 0 || column >= COLUMN_COUNT) + return QVariant(); + + const transfertItem& item = transfertItemList[row]; + if(role==Qt::UserRole) + return item.id; + else if(role==Qt::DisplayRole) + { + switch(column) + { + case 0: + return item.source; + break; + case 1: + return item.size; + break; + case 2: + return item.destination; + break; + default: + return QVariant(); + } + } + else if(role==Qt::DecorationRole) + { + switch(column) + { + case 0: + /*if(item.done) + return iconStop; + else */if(stopId.contains(item.id)) + return iconPause; + else if(startId.contains(item.id)) + return iconStart; + else + return QVariant(); + break; + default: + return QVariant(); + } + } + else if(role==Qt::BackgroundRole) + { + if(!search_text.isEmpty() && (item.source.indexOf(search_text,0,Qt::CaseInsensitive)!=-1 || item.destination.indexOf(search_text,0,Qt::CaseInsensitive)!=-1)) + { + if(haveSearchItem && searchId==item.id) + return QColor(255,150,150,100); + else + return QColor(255,255,0,100); + } + else + return QVariant(); + } + return QVariant(); +} + +int TransferModel::rowCount( const QModelIndex& parent ) const +{ + return parent == QModelIndex() ? transfertItemList.count() : 0; +} + +quint64 TransferModel::firstId() +{ + if(transfertItemList.count()>0) + return transfertItemList[0].id; + else + return 0; +} + +QVariant TransferModel::headerData( int section, Qt::Orientation orientation, int role ) const +{ + if ( role == Qt::DisplayRole && orientation == Qt::Horizontal && section >= 0 && section < COLUMN_COUNT ) { + switch ( section ) { + case 0: + return facilityEngine->translateText("Source"); + case 1: + return facilityEngine->translateText("Size"); + case 2: + return facilityEngine->translateText("Destination"); + } + } + + return QAbstractTableModel::headerData( section, orientation, role ); +} + +bool TransferModel::setData( const QModelIndex& index, const QVariant& value, int role ) +{ + row=index.row(); + column=index.column(); + if(index.parent()!=QModelIndex() || row < 0 || row >= transfertItemList.count() || column < 0 || column >= COLUMN_COUNT) + return false; + + transfertItem& item = transfertItemList[row]; + if(role==Qt::UserRole) + { + item.id=value.toULongLong(); + return true; + } + else if(role==Qt::DisplayRole) + { + switch(column) + { + case 0: + item.source=value.toString(); + emit dataChanged(index,index); + return true; + break; + case 1: + item.size=value.toString(); + emit dataChanged(index,index); + return true; + break; + case 2: + item.destination=value.toString(); + emit dataChanged(index,index); + return true; + break; + default: + return false; + } + } + return false; +} + +/* + Return[0]: totalFile + Return[1]: totalSize + Return[2]: currentFile + */ +QList<quint64> TransferModel::synchronizeItems(const QList<Ultracopier::ReturnActionOnCopyList>& returnActions) +{ + loop_size=returnActions.size(); + index_for_loop=0; + totalFile=0; + totalSize=0; + currentFile=0; + emit layoutAboutToBeChanged(); + while(index_for_loop<loop_size) + { + const Ultracopier::ReturnActionOnCopyList& action=returnActions.at(index_for_loop); + switch(action.type) + { + case Ultracopier::AddingItem: + { + transfertItem newItem; + newItem.id=action.addAction.id; + newItem.source=action.addAction.sourceFullPath; + newItem.size=facilityEngine->sizeToString(action.addAction.size); + newItem.destination=action.addAction.destinationFullPath; +// newItem.done=false; + transfertItemList<<newItem; + totalFile++; + totalSize+=action.addAction.size; + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("id: %1, size: %2, name: %3").arg(action.addAction.id).arg(action.addAction.size).arg(action.addAction.sourceFullPath)); + } + break; + case Ultracopier::MoveItem: + { + //bool current_entry= + if(action.userAction.position<0) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("id: %1, position is wrong: %3").arg(action.addAction.id).arg(action.userAction.position)); + break; + } + if(action.userAction.position>(transfertItemList.size()-1)) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("id: %1, position is wrong: %3").arg(action.addAction.id).arg(action.userAction.position)); + break; + } + if(action.userAction.moveAt<0) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("id: %1, position is wrong: %3").arg(action.addAction.id).arg(action.userAction.position)); + break; + } + if(action.userAction.moveAt>(transfertItemList.size()-1)) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("id: %1, position is wrong: %3").arg(action.addAction.id).arg(action.userAction.position)); + break; + } + transfertItemList.move(action.userAction.position,action.userAction.moveAt); + } + break; + case Ultracopier::RemoveItem: + { + if(currentIndexSearch>0 && action.userAction.position<=currentIndexSearch) + currentIndexSearch--; + if(action.userAction.position<0) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("id: %1, position is wrong: %3").arg(action.addAction.id).arg(action.userAction.position)); + break; + } + if(action.userAction.position>(transfertItemList.size()-1)) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("id: %1, position is wrong: %3").arg(action.addAction.id).arg(action.userAction.position)); + break; + } + transfertItemList.removeAt(action.userAction.position); + currentFile++; + startId.remove(action.addAction.id); + stopId.remove(action.addAction.id); + internalRunningOperation.remove(action.addAction.id); + } + break; + case Ultracopier::PreOperation: + { + ItemOfCopyListWithMoreInformations tempItem; + tempItem.currentReadProgression=0; + tempItem.currentWriteProgression=0; + tempItem.generalData=action.addAction; + tempItem.actionType=action.type; + internalRunningOperation[action.addAction.id]=tempItem; + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("set for file %1: actionType: PreOperation").arg(action.addAction.id)); + } + break; + case Ultracopier::Transfer: + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("found entry for file %1: actionType: Transfer").arg(action.addAction.id)); + if(!startId.contains(action.addAction.id)) + startId << action.addAction.id; + stopId.remove(action.addAction.id); + if(internalRunningOperation.contains(action.addAction.id)) + internalRunningOperation[action.addAction.id].actionType=action.type; + else + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("unable to found entry for file %1: actionType: Transfer").arg(action.addAction.id)); + } + break; + case Ultracopier::PostOperation: + { + if(!stopId.contains(action.addAction.id)) + stopId << action.addAction.id; + startId.remove(action.addAction.id); + } + break; + case Ultracopier::CustomOperation: + { + bool custom_with_progression=(action.addAction.size==1); + //without progression + if(custom_with_progression) + { + if(startId.remove(action.addAction.id)) + if(!stopId.contains(action.addAction.id)) + stopId << action.addAction.id; + } + //with progression + else + { + stopId.remove(action.addAction.id); + if(!startId.contains(action.addAction.id)) + startId << action.addAction.id; + } + if(internalRunningOperation.contains(action.addAction.id)) + { + ItemOfCopyListWithMoreInformations &item=internalRunningOperation[action.addAction.id]; + item.actionType=action.type; + item.custom_with_progression=custom_with_progression; + item.currentReadProgression=0; + item.currentWriteProgression=0; + } + } + break; + default: + //unknow code, ignore it + break; + } + index_for_loop++; + } + emit layoutChanged(); + return QList<quint64>() << totalFile << totalSize << currentFile; +} + +void TransferModel::setFacilityEngine(FacilityInterface * facilityEngine) +{ + this->facilityEngine=facilityEngine; +} + +int TransferModel::search(const QString &text,bool searchNext) +{ + emit layoutAboutToBeChanged(); + search_text=text; + emit layoutChanged(); + if(transfertItemList.size()==0) + return -1; + if(text.isEmpty()) + return -1; + if(searchNext) + { + currentIndexSearch++; + if(currentIndexSearch>=loop_size) + currentIndexSearch=0; + } + index_for_loop=0; + loop_size=transfertItemList.size(); + while(index_for_loop<loop_size) + { + if(transfertItemList.at(currentIndexSearch).source.indexOf(search_text,0,Qt::CaseInsensitive)!=-1 || transfertItemList.at(currentIndexSearch).destination.indexOf(search_text,0,Qt::CaseInsensitive)!=-1) + { + haveSearchItem=true; + searchId=transfertItemList.at(currentIndexSearch).id; + return currentIndexSearch; + } + currentIndexSearch++; + if(currentIndexSearch>=loop_size) + currentIndexSearch=0; + index_for_loop++; + } + haveSearchItem=false; + return -1; +} + +int TransferModel::searchPrev(const QString &text) +{ + emit layoutAboutToBeChanged(); + search_text=text; + emit layoutChanged(); + if(transfertItemList.size()==0) + return -1; + if(text.isEmpty()) + return -1; + if(currentIndexSearch==0) + currentIndexSearch=loop_size-1; + else + currentIndexSearch--; + index_for_loop=0; + loop_size=transfertItemList.size(); + while(index_for_loop<loop_size) + { + if(transfertItemList.at(currentIndexSearch).source.indexOf(search_text,0,Qt::CaseInsensitive)!=-1 || transfertItemList.at(currentIndexSearch).destination.indexOf(search_text,0,Qt::CaseInsensitive)!=-1) + { + haveSearchItem=true; + searchId=transfertItemList.at(currentIndexSearch).id; + return currentIndexSearch; + } + if(currentIndexSearch==0) + currentIndexSearch=loop_size-1; + else + currentIndexSearch--; + index_for_loop++; + } + haveSearchItem=false; + return -1; +} + +void TransferModel::setFileProgression(QList<Ultracopier::ProgressionItem> &progressionList) +{ + loop_size=progressionList.size(); + index_for_loop=0; + while(index_for_loop<loop_size) + { + if(internalRunningOperation.contains(progressionList.at(index_for_loop).id)) + { + internalRunningOperation[progressionList.at(index_for_loop).id].generalData.size=progressionList.at(index_for_loop).total; + internalRunningOperation[progressionList.at(index_for_loop).id].currentReadProgression=progressionList.at(index_for_loop).currentRead; + internalRunningOperation[progressionList.at(index_for_loop).id].currentWriteProgression=progressionList.at(index_for_loop).currentWrite; + #ifdef ULTRACOPIER_PLUGIN_DEBUG + progressionList.removeAt(index_for_loop); + index_for_loop--; + loop_size--; + #endif + } + index_for_loop++; + } + #ifdef ULTRACOPIER_PLUGIN_DEBUG + if(progressionList.size()>0) + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Critical,"progression remaning items"); + #endif +} + +TransferModel::currentTransfertItem TransferModel::getCurrentTransfertItem() +{ + currentTransfertItem returnItem; + returnItem.progressBar_read=-1; + returnItem.progressBar_write=0; + returnItem.haveItem=startId.size()>0; + if(returnItem.haveItem) + { + if(!internalRunningOperation.contains(*startId.constBegin())) + { + returnItem.haveItem=false; + return returnItem; + } + const ItemOfCopyListWithMoreInformations &itemTransfer=internalRunningOperation[*startId.constBegin()]; + returnItem.from=itemTransfer.generalData.sourceFullPath; + returnItem.to=itemTransfer.generalData.destinationFullPath; + returnItem.current_file=itemTransfer.generalData.destinationFileName+", "+facilityEngine->sizeToString(itemTransfer.generalData.size); + returnItem.id=itemTransfer.generalData.id; + switch(itemTransfer.actionType) + { + case Ultracopier::CustomOperation: + if(!itemTransfer.custom_with_progression) + returnItem.progressBar_read=-1; + else + { + if(itemTransfer.generalData.size>0) + { + returnItem.progressBar_read=((double)itemTransfer.currentReadProgression/itemTransfer.generalData.size)*65535; + returnItem.progressBar_write=((double)itemTransfer.currentWriteProgression/itemTransfer.generalData.size)*65535; + } + else + returnItem.progressBar_read=-1; + } + break; + case Ultracopier::Transfer: + if(itemTransfer.generalData.size>0) + { + returnItem.progressBar_read=((double)itemTransfer.currentReadProgression/itemTransfer.generalData.size)*65535; + returnItem.progressBar_write=((double)itemTransfer.currentWriteProgression/itemTransfer.generalData.size)*65535; + } + else + { + returnItem.progressBar_read=0; + returnItem.progressBar_write=0; + } + break; + //should never pass here + case Ultracopier::PostOperation: + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("wrong action type for file %1: actionType: %2").arg(itemTransfer.generalData.id).arg(itemTransfer.actionType)); + returnItem.progressBar_read=65535; + returnItem.progressBar_write=65535; + break; + //should never pass here + case Ultracopier::PreOperation: + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("wrong action type for file %1: actionType: %2").arg(itemTransfer.generalData.id).arg(itemTransfer.actionType)); + returnItem.progressBar_read=0; + returnItem.progressBar_write=0; + break; + default: + returnItem.progressBar_read=0; + returnItem.progressBar_write=0; + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("unknow action type for file %1: actionType: %2").arg(itemTransfer.generalData.id).arg(itemTransfer.actionType)); + break; + } + } + else + { + returnItem.haveItem=stopId.size()>0; + if(returnItem.haveItem) + { + if(!internalRunningOperation.contains(*stopId.constBegin())) + { + returnItem.haveItem=false; + return returnItem; + } + const ItemOfCopyListWithMoreInformations &itemTransfer=internalRunningOperation[*stopId.constBegin()]; + returnItem.from=itemTransfer.generalData.sourceFullPath; + returnItem.to=itemTransfer.generalData.destinationFullPath; + returnItem.current_file=itemTransfer.generalData.destinationFileName+", "+facilityEngine->sizeToString(itemTransfer.generalData.size); + returnItem.id=itemTransfer.generalData.id; + switch(itemTransfer.actionType) + { + case Ultracopier::CustomOperation: + if(!itemTransfer.custom_with_progression) + returnItem.progressBar_read=-1; + else + { + if(itemTransfer.generalData.size>0) + { + returnItem.progressBar_read=((double)itemTransfer.currentReadProgression/itemTransfer.generalData.size)*65535; + returnItem.progressBar_write=((double)itemTransfer.currentWriteProgression/itemTransfer.generalData.size)*65535; + } + else + returnItem.progressBar_read=-1; + } + break; + case Ultracopier::Transfer: + if(itemTransfer.generalData.size>0) + { + returnItem.progressBar_read=((double)itemTransfer.currentReadProgression/itemTransfer.generalData.size)*65535; + returnItem.progressBar_write=((double)itemTransfer.currentWriteProgression/itemTransfer.generalData.size)*65535; + } + else + { + returnItem.progressBar_read=0; + returnItem.progressBar_write=0; + } + break; + case Ultracopier::PostOperation: + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("wrong action type for file %1: actionType: %2").arg(itemTransfer.generalData.id).arg(itemTransfer.actionType)); + returnItem.progressBar_read=65535; + returnItem.progressBar_write=65535; + break; + //should never pass here + case Ultracopier::PreOperation: + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("wrong action type for file %1: actionType: %2").arg(itemTransfer.generalData.id).arg(itemTransfer.actionType)); + returnItem.progressBar_read=0; + returnItem.progressBar_write=0; + break; + default: + returnItem.progressBar_read=65535; + returnItem.progressBar_write=65535; + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("unknow action type for file %1: actionType: %2").arg(itemTransfer.generalData.id).arg(itemTransfer.actionType)); + break; + } + } + } + if(returnItem.haveItem && returnItem.progressBar_read!=-1 && returnItem.progressBar_write>returnItem.progressBar_read) + { + int tempVar=returnItem.progressBar_write; + returnItem.progressBar_write=returnItem.progressBar_read; + returnItem.progressBar_read=tempVar; + } + return returnItem; +} diff --git a/plugins-unmaintained/Themes/Teracopy/TransferModel.h b/plugins-unmaintained/Themes/Teracopy/TransferModel.h new file mode 100644 index 0000000..977c986 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/TransferModel.h @@ -0,0 +1,92 @@ +#ifndef TRANSFERMODEL_H +#define TRANSFERMODEL_H + +#include <QAbstractTableModel> +#include <QModelIndex> +#include <QVariant> +#include <QList> +#include <QSet> +#include <QIcon> +#include <QString> + +#include "StructEnumDefinition.h" +#include "Environment.h" + +#include "../../../interface/FacilityInterface.h" + +/// \brief model to store the transfer list +class TransferModel : public QAbstractTableModel +{ + Q_OBJECT +public: + /// \brief the transfer item displayed + struct transfertItem + { + quint64 id; + QString source; + QString size; + QString destination; + }; + /// \brief the transfer item with progression + struct ItemOfCopyListWithMoreInformations + { + quint64 currentReadProgression,currentWriteProgression; + Ultracopier::ItemOfCopyList generalData; + Ultracopier::ActionTypeCopyList actionType; + bool custom_with_progression; + }; + /// \brief returned first transfer item + struct currentTransfertItem + { + quint64 id; + bool haveItem; + QString from; + QString to; + QString current_file; + int progressBar_read,progressBar_write; + }; + + TransferModel(); + + virtual int columnCount(const QModelIndex& parent = QModelIndex()) const; + virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; + virtual int rowCount(const QModelIndex& parent = QModelIndex()) const; + virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; + virtual bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole); + + QList<quint64> synchronizeItems(const QList<Ultracopier::ReturnActionOnCopyList>& returnActions); + void setFacilityEngine(FacilityInterface * facilityEngine); + + int search(const QString &text,bool searchNext); + int searchPrev(const QString &text); + + void setFileProgression(QList<Ultracopier::ProgressionItem> &progressionList); + + currentTransfertItem getCurrentTransfertItem(); + + quint64 firstId(); +protected: + QList<transfertItem> transfertItemList;///< To have a transfer list for the user + QList<transfertItem> transfertItemListDone;///< To have a transfer list for the user + QSet<quint64> startId,stopId;///< To show what is started, what is stopped + QHash<quint64,ItemOfCopyListWithMoreInformations> internalRunningOperation;///< to have progression and stat + QIcon iconStart,iconPause,iconStop; +private: + int loop_size,index_for_loop; + int sub_loop_size,sub_index_for_loop; + int row,column; + quint64 totalFile,totalSize,currentFile; + FacilityInterface * facilityEngine; + QString search_text; + /// \brief index from start the search, decresed by remove before it + int currentIndexSearch; + bool haveSearchItem; + quint64 searchId; +signals: + #ifdef ULTRACOPIER_PLUGIN_DEBUG + /// \brief To debug source + void debugInformation(const Ultracopier::DebugLevel &level,const QString &fonction,const QString &text,const QString &file,const int &ligne); + #endif +}; + +#endif // TRANSFERMODEL_H diff --git a/plugins-unmaintained/Themes/Teracopy/Variable.h b/plugins-unmaintained/Themes/Teracopy/Variable.h new file mode 100644 index 0000000..963d0c8 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/Variable.h @@ -0,0 +1,15 @@ +/** \file Variable.h
+\brief Define the environment variable
+\author alpha_one_x86
+\licence GPL3, see the file COPYING */
+
+#ifndef VARIABLE_H
+#define VARIABLE_H
+
+//Un-comment this next line to put ultracopier plugin in debug mode
+#define ULTRACOPIER_PLUGIN_DEBUG
+
+#endif // VARIABLE_H
+
+
+
diff --git a/plugins-unmaintained/Themes/Teracopy/documentation.dox b/plugins-unmaintained/Themes/Teracopy/documentation.dox new file mode 100644 index 0000000..ee76e20 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/documentation.dox @@ -0,0 +1,28 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- **/ + +/* + This file contains NO source code, just some documentation for doxygen to + parse. +*/ + +/*! + \mainpage Teracopy + + \section mainpage_overview Overview + + It's Teracopy interface, to come from Teracopy to Ultracopier.\n + More informations on <a href="http://ultracopier-wiki.first-world.info/">the wiki of ultracopier</a>. Is part of Ultracopier project as alternative plugin. + + \section mainpage_platforms Platforms + + Ultracopier might be usable in all environments where you find Qt 5.\n + Ultracopier requires Qt 5.0 or newer. Tested on Qt 5.0. + + \section mainpage_downloads Downloads + + You can find the link on <a href="http://ultracopier.first-world.info/">Ultracopier</a> project page, via git, snapshot sources, ... + + \section license GPL Version 3 + The code source is under GPL3. The image is extacted from Oxygen icon pack of KDE4. + +*/ diff --git a/plugins-unmaintained/Themes/Teracopy/factory.cpp b/plugins-unmaintained/Themes/Teracopy/factory.cpp new file mode 100644 index 0000000..2b176bf --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/factory.cpp @@ -0,0 +1,70 @@ +/** \file factory.cpp +\brief Define the factory core +\author alpha_one_x86 +*/ + +#include "factory.h" + +PluginInterface_Themes * ThemesFactory::getInstance() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + Themes * newInterface=new Themes(facilityEngine); + #ifdef ULTRACOPIER_PLUGIN_DEBUG + connect(newInterface,&Themes::debugInformation,this,&PluginInterface_ThemesFactory::debugInformation); + #endif + connect(this,&ThemesFactory::reloadLanguage,newInterface,&Themes::newLanguageLoaded); + return newInterface; +} + +void ThemesFactory::setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,FacilityInterface * facilityInterface,const bool &portableVersion) +{ + Q_UNUSED(writePath); + Q_UNUSED(pluginPath); + this->facilityEngine=facilityInterface; + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start, writePath: "+writePath+", pluginPath: "+pluginPath); + Q_UNUSED(portableVersion); + Q_UNUSED(options); +} + +QWidget * ThemesFactory::options() +{ + return NULL; +} + +void ThemesFactory::resetOptions() +{ +} + +QIcon ThemesFactory::getIcon(const QString &fileName) const +{ + if(fileName=="SystemTrayIcon/exit.png") + { + QIcon tempIcon=QIcon::fromTheme("application-exit"); + if(!tempIcon.isNull()) + return tempIcon; + } + if(fileName=="SystemTrayIcon/add.png") + { + QIcon tempIcon=QIcon::fromTheme("list-add"); + if(!tempIcon.isNull()) + return tempIcon; + } + if(fileName=="SystemTrayIcon/informations.png") + { + QIcon tempIcon=QIcon::fromTheme("help-about"); + if(!tempIcon.isNull()) + return tempIcon; + } + if(fileName=="SystemTrayIcon/options.png") + { + QIcon tempIcon=QIcon::fromTheme("applications-system"); + if(!tempIcon.isNull()) + return tempIcon; + } + return QIcon(":/Themes/Teracopy/resources/"+fileName); +} + +void ThemesFactory::newLanguageLoaded() +{ + emit reloadLanguage(); +} diff --git a/plugins-unmaintained/Themes/Teracopy/factory.h b/plugins-unmaintained/Themes/Teracopy/factory.h new file mode 100644 index 0000000..0b3bb3f --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/factory.h @@ -0,0 +1,42 @@ +/** \file factory.h +\brief Define the factory +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef FACTORY_H +#define FACTORY_H + +#include <QObject> +#include <QWidget> +#include <QMenu> +#include <QCloseEvent> + +#include "../../../interface/PluginInterface_Themes.h" +#include "interface.h" +#include "Environment.h" + +/// \brief Define the factory, to create instance of the interface +class ThemesFactory : public PluginInterface_ThemesFactory +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "first-world.info.ultracopier.PluginInterface.ThemesFactory/1.0.1.0" FILE "plugin.json") + Q_INTERFACES(PluginInterface_ThemesFactory) +public: + /// \brief to return the instance of the copy engine + PluginInterface_Themes * getInstance(); + /// \brief set the resources, to store options, to have facilityInterface + void setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,FacilityInterface * facilityInterface,const bool &portableVersion); + /// \brief to get the default options widget + QWidget * options(); + /// \brief to get a resource icon + QIcon getIcon(const QString &fileName) const; +public slots: + void resetOptions(); + void newLanguageLoaded(); +signals: + void reloadLanguage(); +private: + FacilityInterface * facilityEngine; +}; + +#endif // FACTORY_H diff --git a/plugins-unmaintained/Themes/Teracopy/informations.xml b/plugins-unmaintained/Themes/Teracopy/informations.xml new file mode 100644 index 0000000..4447611 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/informations.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<package> + <title xml:lang="en"><![CDATA[Teracopy style for Ultracopier]]></title><!-- english is required --> + <title xml:lang="fr"><![CDATA[Style Teracopy pour Ultracopier]]></title> + <!-- What kind of plugin this is --> + <category>Themes</category> + <!-- Who wrote this plugin --> + <author><![CDATA[BRULE Herman, alpha_one_x86 (alpha_one_x86@first-world.info)]]></author> + <!-- URL of page or site for this plugin (may provide additional information, bug reports, feature requests). --> + <website xml:lang="en"><![CDATA[http://ultracopier.first-world.info/]]></website><!-- not required --> + <website xml:lang="fr"><![CDATA[http://ultracopier-fr.first-world.info/]]></website><!-- not required --> + <!-- the date-time format should be in timestamps format --> + <pubDate>1287496800</pubDate> + <!-- the architecture code of this plugin, found PlatformMacro.h into ultracopier source --> + <architecture>windows-x86</architecture> + <!-- Detailed description --> + <description xml:lang="en"><![CDATA[Teracopy style for Ultracopier, reproduct with screenshot on internet]]></description> + <description xml:lang="fr"><![CDATA[Style Teracopy pour Ultracopier, reproduit avec les screenshots vu sur internet]]></description> + <!-- Version of this release of this plugin, need be like that's: A.B.C.D, where A, B, C and D is number --> + <version>1.4.0.8</version> + <!-- This internal name should never change, because it is used to detect when a particular plugin is updated. It must comprise only lower case ASCII characters (a-z), numerical digits (0-9), "-", "." or "_", and it must be be unique within the category. And have size lower than 64 char. --> + <name>Teracopy</name> + <!-- Dependency checking. This is used to check when a plugin may not be compatible with an updated version of either Ultracopier or another plugin. This example only checks Ultracopier. --> + <dependencies><![CDATA[ + ]]></dependencies> +</package>
\ No newline at end of file diff --git a/plugins-unmaintained/Themes/Teracopy/interface.cpp b/plugins-unmaintained/Themes/Teracopy/interface.cpp new file mode 100644 index 0000000..64220d0 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/interface.cpp @@ -0,0 +1,500 @@ +/** \file interface.cpp +\brief Define the interface core +\author alpha_one_x86 +*/ + +#include <QMessageBox> +#include <cmath> + +#include "interface.h" +#include "ui_interface.h" + +// The cmath header from MSVC does not contain round() +#if (defined(_WIN64) || defined(_WIN32)) && defined(_MSC_VER) +inline double round(double d) { + return floor( d + 0.5 ); +} +#endif + +Themes::Themes(FacilityInterface * facilityEngine) : + ui(new Ui::interfaceCopy()) +{ + this->facilityEngine=facilityEngine; + ui->setupUi(this); + transferModel.setFacilityEngine(facilityEngine); + ui->TransferList->setModel(&transferModel); + + currentFile = 0; + totalFile = 0; + currentSize = 0; + totalSize = 0; + storeIsInPause = false; + modeIsForced = false; + haveStarted = false; + speedString = facilityEngine->speedToString(0); + ui->toolButtonMenu->setMenu(&menu); + + connect(ui->actionAddFile,&QAction::triggered,this,&Themes::forcedModeAddFile); + connect(ui->actionAddFileToCopy,&QAction::triggered,this,&Themes::forcedModeAddFileToCopy); + connect(ui->actionAddFileToMove,&QAction::triggered,this,&Themes::forcedModeAddFileToMove); + connect(ui->actionAddFolderToCopy,&QAction::triggered,this,&Themes::forcedModeAddFolderToCopy); + connect(ui->actionAddFolderToMove,&QAction::triggered,this,&Themes::forcedModeAddFolderToMove); + connect(ui->actionAddFolder,&QAction::triggered,this,&Themes::forcedModeAddFolder); + + #ifdef ULTRACOPIER_PLUGIN_DEBUG + connect(&transferModel,&TransferModel::debugInformation,this,&Themes::debugInformation); + #endif + + progressColorWrite=QApplication::palette().color(QPalette::Highlight); + progressColorRead=QApplication::palette().color(QPalette::AlternateBase); + progressColorRemaining=QApplication::palette().color(QPalette::Base); + + ui->progressBar_all->setStyleSheet(QStringLiteral("QProgressBar{border:1px solid grey;text-align:center;background-color:%1;}QProgressBar::chunk{background-color:%2;}") + .arg(progressColorRemaining.name()) + .arg(progressColorWrite.name()) + ); + ui->progressBar_file->setStyleSheet(QStringLiteral("QProgressBar{border:1px solid grey;text-align:center;background-color:%1;}QProgressBar::chunk{background-color:%2;}") + .arg(progressColorRemaining.name()) + .arg(progressColorWrite.name()) + ); + show(); + isInPause(false); +} + +Themes::~Themes() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); +} + +QWidget * Themes::getOptionsEngineWidget() +{ + return &optionEngineWidget; +} + +void Themes::getOptionsEngineEnabled(const bool &isEnabled) +{ + Q_UNUSED(isEnabled); +} + +/// \brief set if transfer list is exportable/importable +void Themes::setTransferListOperation(const Ultracopier::TransferListOperation &transferListOperation) +{ + Q_UNUSED(transferListOperation); +} + +void Themes::closeEvent(QCloseEvent *event) +{ + event->ignore(); + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + this->hide(); + emit cancel(); +} + +void Themes::updateOverallInformation() +{ + ui->overall->setText(tr("Total: %1 of %2").arg(facilityEngine->sizeToString(currentSize)).arg(facilityEngine->sizeToString(totalSize))); + ui->labelNumberFile->setText(tr("%1 of %2").arg(currentFile).arg(totalFile)); +} + +void Themes::actionInProgess(const Ultracopier::EngineActionInProgress &action) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Information,"start: "+QString::number(action)); + this->action=action; + ui->pauseButton->setEnabled(action!=Ultracopier::Idle); + switch(action) + { + case Ultracopier::Copying: + case Ultracopier::CopyingAndListing: + ui->progressBar_all->setMaximum(65535); + ui->progressBar_all->setMinimum(0); + break; + case Ultracopier::Listing: + ui->progressBar_all->setMaximum(0); + ui->progressBar_all->setMinimum(0); + break; + case Ultracopier::Idle: + if(haveStarted) + emit cancel(); + break; + default: + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Critical,"Very wrong switch case!"); + break; + } + switch(action) + { + case Ultracopier::Copying: + case Ultracopier::CopyingAndListing: + haveStarted=true; + ui->cancelButton->setText(facilityEngine->translateText("Quit")); + if(storeIsInPause) + ui->pauseButton->setText(facilityEngine->translateText("Start")); + else + ui->pauseButton->setText(facilityEngine->translateText("Pause")); + break; + case Ultracopier::Idle: + ui->cancelButton->setText(facilityEngine->translateText("Quit")); + break; + default: + break; + } +} + +void Themes::newFolderListing(const QString &path) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + if(action==Ultracopier::Listing) + ui->from->setText(path); +} + +void Themes::detectedSpeed(const quint64 &speed)//in byte per seconds +{ + speedString=facilityEngine->speedToString(speed); +} + +/** \brief support speed limitation */ +void Themes::setSupportSpeedLimitation(const bool &supportSpeedLimitationBool) +{ + Q_UNUSED(supportSpeedLimitationBool); +} + +void Themes::remainingTime(const int &remainingSeconds) +{ + if(remainingSeconds==-1) + ui->labelTimeRemaining->setText("<html><body>∞</body></html>"); + else + { + Ultracopier::TimeDecomposition time=facilityEngine->secondsToTimeDecomposition(remainingSeconds); + ui->labelTimeRemaining->setText(QString::number(time.hour)+":"+QString::number(time.minute)+":"+QString::number(time.second)); + } +} + +void Themes::newCollisionAction(const QString &action) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + Q_UNUSED(action); +} + +void Themes::newErrorAction(const QString &action) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + Q_UNUSED(action); +} + +void Themes::errorDetected() +{ +} + +/// \brief new error +void Themes::errorToRetry(const QString &source,const QString &destination,const QString &error) +{ + Q_UNUSED(source); + Q_UNUSED(destination); + Q_UNUSED(error); +} + +//speed limitation +bool Themes::setSpeedLimitation(const qint64 &speedLimitation) +{ + if(speedLimitation>0) + emit newSpeedLimitation(0); + return true; +} + +//get information about the copy +void Themes::setGeneralProgression(const quint64 ¤t,const quint64 &total) +{ + currentSize=current; + totalSize=total; + if(total>0) + { + int newIndicator=((double)current/total)*65535; + ui->progressBar_all->setValue(newIndicator); + } + else + ui->progressBar_all->setValue(0); +} + +void Themes::setCollisionAction(const QList<QPair<QString,QString> > &list) +{ + Q_UNUSED(list); +} + +void Themes::setErrorAction(const QList<QPair<QString,QString> > &list) +{ + Q_UNUSED(list); +} + +void Themes::setCopyType(const Ultracopier::CopyType &type) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + this->type=type; + updateModeAndType(); +} + +void Themes::forceCopyMode(const Ultracopier::CopyMode &mode) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + modeIsForced=true; + this->mode=mode; + if(mode==Ultracopier::Copy) + this->setWindowTitle("Ultracopier - "+facilityEngine->translateText("Copy")); + else + this->setWindowTitle("Ultracopier - "+facilityEngine->translateText("Move")); + updateModeAndType(); +} + +void Themes::updateTitle() +{ + QString startString; + if(action==Ultracopier::Copying || action==Ultracopier::CopyingAndListing) + startString=tr("%1% done").arg(((double)currentSize/totalSize)*100); + else + startString="Ultracopier"; + startString+=" - "; + if(mode==Ultracopier::Copy) + this->setWindowTitle(startString+facilityEngine->translateText("Copy")+" ("+speedString+")"); + else + this->setWindowTitle(startString+facilityEngine->translateText("Move")+" ("+speedString+")"); +} + +void Themes::haveExternalOrder() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); +// ui->moreButton->toggle(); +} + +void Themes::isInPause(const bool &isInPause) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"isInPause: "+QString::number(isInPause)); + //resume in auto the pause + storeIsInPause=isInPause; + if(isInPause) + ui->pauseButton->setText(facilityEngine->translateText("Resume")); + else + ui->pauseButton->setText(facilityEngine->translateText("Pause")); +} + +void Themes::updateCurrentFileInformation() +{ + TransferModel::currentTransfertItem transfertItem=transferModel.getCurrentTransfertItem(); + if(transfertItem.haveItem) + { + ui->from->setText(transfertItem.from); + //commented because not displayed on this interface + //ui->to->setText(transfertItem.to); + //ui->current_file->setText(transfertItem.current_file); + if(transfertItem.progressBar_read!=-1) + { + ui->progressBar_file->setRange(0,65535); + if(transfertItem.progressBar_read!=transfertItem.progressBar_write) + { + float permilleread=round((float)transfertItem.progressBar_read/65535*1000)/1000; + float permillewrite=permilleread-0.001; + ui->progressBar_file->setStyleSheet(QStringLiteral("QProgressBar{border: 1px solid grey;text-align: center;background-color: qlineargradient(spread:pad, x1:%1, y1:0, x2:%2, y2:0, stop:0 %3, stop:1 %4);}QProgressBar::chunk{background-color:%5;}") + .arg(permilleread) + .arg(permillewrite) + .arg(progressColorRemaining.name()) + .arg(progressColorRead.name()) + .arg(progressColorWrite.name()) + ); + } + else + ui->progressBar_file->setStyleSheet(QStringLiteral("QProgressBar{border:1px solid grey;text-align:center;background-color:%1;}QProgressBar::chunk{background-color:%2;}") + .arg(progressColorRemaining.name()) + .arg(progressColorWrite.name()) + ); + ui->progressBar_file->setValue(transfertItem.progressBar_write); + } + else + ui->progressBar_file->setRange(0,0); + } + else + { + ui->from->setText(""); + //commented because not displayed on this interface + //ui->to->setText(""); + //ui->current_file->setText("-"); + if(haveStarted && transferModel.rowCount()==0) + ui->progressBar_file->setValue(65535); + else if(!haveStarted) + ui->progressBar_file->setValue(0); + } +} + + +void Themes::on_cancelButton_clicked() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + this->hide(); + emit cancel(); +} + + +void Themes::on_pauseButton_clicked() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + if(storeIsInPause) + emit resume(); + else + emit pause(); +} + +void Themes::on_skipButton_clicked() +{ + TransferModel::currentTransfertItem transfertItem=transferModel.getCurrentTransfertItem(); + if(transfertItem.haveItem) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("skip at running: %1").arg(transfertItem.id)); + emit skip(transfertItem.id); + } + else + { + if(transferModel.rowCount()>1) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QStringLiteral("skip at idle: %1").arg(transferModel.firstId())); + emit skip(transferModel.firstId()); + } + else + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Critical,"unable to skip the transfer, because no transfer running"); + } +} + +void Themes::updateModeAndType() +{ + menu.clear(); + if(modeIsForced) + { + menu.addAction(ui->actionAddFile); + if(type==Ultracopier::FileAndFolder) + menu.addAction(ui->actionAddFolder); + } + else + { + menu.addAction(ui->actionAddFileToCopy); + menu.addAction(ui->actionAddFileToMove); + if(type==Ultracopier::FileAndFolder) + { + menu.addAction(ui->actionAddFolderToCopy); + menu.addAction(ui->actionAddFolderToMove); + } + } +} + +void Themes::forcedModeAddFile() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + emit userAddFile(mode); +} + +void Themes::forcedModeAddFolder() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + emit userAddFolder(mode); +} + +void Themes::forcedModeAddFileToCopy() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + emit userAddFile(Ultracopier::Copy); +} + +void Themes::forcedModeAddFolderToCopy() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + emit userAddFolder(Ultracopier::Copy); +} + +void Themes::forcedModeAddFileToMove() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + emit userAddFile(Ultracopier::Move); +} + +void Themes::forcedModeAddFolderToMove() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + emit userAddFolder(Ultracopier::Move); +} + +//set the translate +void Themes::newLanguageLoaded() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + if(modeIsForced) + forceCopyMode(mode); + ui->retranslateUi(this); + if(haveStarted) + updateCurrentFileInformation(); + updateOverallInformation(); +} + +/* + Return[0]: totalFile + Return[1]: totalSize + Return[2]: currentFile + */ +void Themes::getActionOnList(const QList<Ultracopier::ReturnActionOnCopyList>& returnActions) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start, returnActions.size(): "+QString::number(returnActions.size())); + QList<quint64> returnValue=transferModel.synchronizeItems(returnActions); + totalFile+=returnValue[0]; + totalSize+=returnValue[1]; + currentFile+=returnValue[2]; + if(transferModel.rowCount()==0) + { + ui->skipButton->setEnabled(false); + ui->progressBar_all->setValue(65535); + ui->progressBar_file->setValue(65535); + currentSize=totalSize; + } + else + ui->skipButton->setEnabled(true); + updateOverallInformation(); + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"transferModel.rowCount(): "+QString::number(transferModel.rowCount())); +} + +void Themes::setFileProgression(const QList<Ultracopier::ProgressionItem> &progressionList) +{ + QList<Ultracopier::ProgressionItem> progressionListBis=progressionList; + transferModel.setFileProgression(progressionListBis); + updateCurrentFileInformation(); +} + +Themes::currentTransfertItem Themes::getCurrentTransfertItem() +{ + currentTransfertItem returnItem; + returnItem.haveItem=InternalRunningOperation.size()>0; + if(returnItem.haveItem) + { + const ItemOfCopyListWithMoreInformations &itemTransfer=InternalRunningOperation.first(); + returnItem.from=itemTransfer.generalData.sourceFullPath; + returnItem.to=itemTransfer.generalData.destinationFullPath; + returnItem.current_file=itemTransfer.generalData.destinationFileName+", "+facilityEngine->sizeToString(itemTransfer.generalData.size); + switch(itemTransfer.actionType) + { + case Ultracopier::CustomOperation: + if(!itemTransfer.custom_with_progression) + returnItem.progressBar_file=0; + else + { + if(itemTransfer.generalData.size>0) + returnItem.progressBar_file=((double)itemTransfer.currentProgression/itemTransfer.generalData.size)*65535; + else + returnItem.progressBar_file=0; + } + break; + case Ultracopier::Transfer: + if(itemTransfer.generalData.size>0) + returnItem.progressBar_file=((double)itemTransfer.currentProgression/itemTransfer.generalData.size)*65535; + else + returnItem.progressBar_file=0; + break; + case Ultracopier::PostOperation: + returnItem.progressBar_file=65535; + break; + default: + returnItem.progressBar_file=0; + } + } + return returnItem; +} diff --git a/plugins-unmaintained/Themes/Teracopy/interface.h b/plugins-unmaintained/Themes/Teracopy/interface.h new file mode 100644 index 0000000..b2f6a70 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/interface.h @@ -0,0 +1,176 @@ +/** \file interface.h +\brief Define the interface test +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef INTERFACE_H +#define INTERFACE_H + +#include <QObject> +#include <QWidget> +#include <QCloseEvent> +#include <QMenu> +#include <QColor> + +#include "../../../interface/PluginInterface_Themes.h" + +#include "ui_interface.h" +#include "Environment.h" +#include "TransferModel.h" + +namespace Ui { + class interfaceCopy; +} + +/// \brief Define the interface +class Themes : public PluginInterface_Themes +{ + Q_OBJECT +private: + struct ItemOfCopyListWithMoreInformations + { + quint64 currentProgression; + Ultracopier::ItemOfCopyList generalData; + Ultracopier::ActionTypeCopyList actionType; + bool custom_with_progression; + }; + struct currentTransfertItem + { + quint64 id; + bool haveItem; + QString from; + QString to; + QString current_file; + int progressBar_file; + }; + Ui::interfaceCopy *ui; + quint64 currentFile; + quint64 totalFile; + quint64 currentSize; + quint64 totalSize; + void updateOverallInformation(); + void updateCurrentFileInformation(); + Ultracopier::EngineActionInProgress action; + void closeEvent(QCloseEvent *event); + QList<ItemOfCopyListWithMoreInformations> currentProgressList; + QString speedString; + bool storeIsInPause; + bool modeIsForced; + Ultracopier::CopyType type; + Ultracopier::CopyMode mode; + void updateModeAndType(); + bool haveStarted; + QWidget optionEngineWidget; + void updateTitle(); + QMenu menu; + FacilityInterface * facilityEngine; + int loop_size,loop_sub_size,indexAction,index; + int index_for_loop,sub_loop_size,sub_index_for_loop; + currentTransfertItem getCurrentTransfertItem(); + QList<quint64> startId,stopId;///< To show what is started, what is stopped + QList<ItemOfCopyListWithMoreInformations> InternalRunningOperation;///< to have progression and stat + /// \brief the custom transfer model + TransferModel transferModel; + QColor progressColorWrite; + QColor progressColorRead; + QColor progressColorRemaining; +public: + //send information about the copy + /// \brief to set the action in progress + void actionInProgess(const Ultracopier::EngineActionInProgress &); + /// \brief new transfer have started + void newTransferStart(const Ultracopier::ItemOfCopyList &item); + /** \brief one transfer have been stopped + * is stopped, example: because error have occurred, and try later, don't remove the item! */ + void newTransferStop(const quint64 &id); + /// \brief the new folder is listing + void newFolderListing(const QString &path); + /** \brief show the detected speed + * in byte per seconds */ + void detectedSpeed(const quint64 &speed); + /** \brief support speed limitation */ + void setSupportSpeedLimitation(const bool &supportSpeedLimitationBool); + /** \brief show the remaining time + * time in seconds */ + void remainingTime(const int &remainingSeconds); + /// \brief set the current collision action + void newCollisionAction(const QString &action); + /// \brief set the current error action + void newErrorAction(const QString &action); + /// \brief set one error is detected + void errorDetected(); + /// \brief new error + void errorToRetry(const QString &source,const QString &destination,const QString &error); + //speed limitation + /** \brief the max speed used + * in byte per seconds, -1 if not able, 0 if disabled */ + bool setSpeedLimitation(const qint64 &speedLimitation); + Themes(FacilityInterface * facilityEngine); + ~Themes(); + //get information about the copy + /// \brief show the general progression + void setGeneralProgression(const quint64 ¤t,const quint64 &total); + /// \brief show the file progression + void setFileProgression(const QList<Ultracopier::ProgressionItem> &progressionList); + /// \brief set collision action + void setCollisionAction(const QList<QPair<QString,QString> > &); + /// \brief set error action + void setErrorAction(const QList<QPair<QString,QString> > &); + /// \brief set the copyType -> file or folder + void setCopyType(const Ultracopier::CopyType &); + /// \brief set the copyMove -> copy or move, to force in copy or move, else support both + void forceCopyMode(const Ultracopier::CopyMode &); + /// \brief set if transfer list is exportable/importable + void setTransferListOperation(const Ultracopier::TransferListOperation &transferListOperation); + /** \brief set if the order is external (like file manager copy) + * to notify the interface, which can hide add folder/filer button */ + void haveExternalOrder(); + /// \brief set if is in pause + void isInPause(const bool &); + /// \brief get the widget for the copy engine + QWidget * getOptionsEngineWidget(); + /// \brief to set if the copy engine is found + void getOptionsEngineEnabled(const bool &isEnabled); +private slots: + void on_cancelButton_clicked(); + void on_pauseButton_clicked(); + void on_skipButton_clicked(); + void forcedModeAddFile(); + void forcedModeAddFolder(); + void forcedModeAddFileToCopy(); + void forcedModeAddFolderToCopy(); + void forcedModeAddFileToMove(); + void forcedModeAddFolderToMove(); +signals: + #ifdef ULTRACOPIER_PLUGIN_DEBUG + /// \brief To debug source + void debugInformation(const Ultracopier::DebugLevel &level,const QString &fonction,const QString &text,const QString &file,const int &ligne); + #endif + //set the transfer list + /*void removeItems(QList<int> ids); + void moveItemsOnTop(QList<int> ids); + void moveItemsUp(QList<int> ids); + void moveItemsDown(QList<int> ids); + void moveItemsOnBottom(QList<int> ids); + void exportTransferList(); + void importTransferList(); + //user ask ask to add folder (add it with interface ask source/destination) + void userAddFolder(Ultracopier::CopyMode); + void userAddFile(Ultracopier::CopyMode); + void urlDropped(QList<QUrl> urls); + //action on the copy + void pause(); + void resume(); + void skip(quint64 id); + void cancel(); + //edit the action + void sendCollisionAction(QString action); + void sendErrorAction(QString action); + void newSpeedLimitation(qint64);*/ +public slots: + //set the translate + void newLanguageLoaded(); + void getActionOnList(const QList<Ultracopier::ReturnActionOnCopyList>& returnActions); +}; + +#endif // INTERFACE_H diff --git a/plugins-unmaintained/Themes/Teracopy/interface.pro b/plugins-unmaintained/Themes/Teracopy/interface.pro new file mode 100644 index 0000000..5049e19 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/interface.pro @@ -0,0 +1,50 @@ +CONFIG += c++11 +QMAKE_CXXFLAGS+="-std=c++0x -Wall -Wextra" +mac:QMAKE_CXXFLAGS+="-stdlib=libc++" + +QT += widgets +TEMPLATE = lib +CONFIG += plugin +HEADERS = interface.h \ + StructEnumDefinition.h \ + factory.h \ + DebugEngineMacro.h \ + Environment.h \ + Variable.h \ + ../../../interface/PluginInterface_Themes.h \ + TransferModel.h +SOURCES = interface.cpp \ + factory.cpp \ + TransferModel.cpp +TARGET = $$qtLibraryTarget(interface) +TRANSLATIONS += Languages/ar/translation.ts \ + Languages/de/translation.ts \ + Languages/el/translation.ts \ + Languages/en/translation.ts \ + Languages/es/translation.ts \ + Languages/fr/translation.ts \ + Languages/hi/translation.ts \ + Languages/hu/translation.ts \ + Languages/id/translation.ts \ + Languages/it/translation.ts \ + Languages/ja/translation.ts \ + Languages/ko/translation.ts \ + Languages/nl/translation.ts \ + Languages/no/translation.ts \ + Languages/pl/translation.ts \ + Languages/ru/translation.ts \ + Languages/th/translation.ts \ + Languages/tr/translation.ts \ + Languages/zh/translation.ts + +RESOURCES += resources.qrc + +FORMS += \ + interface.ui + +win32 { + RESOURCES += resources_windows.qrc +} +!win32 { + RESOURCES += resources_unix.qrc +} diff --git a/plugins-unmaintained/Themes/Teracopy/interface.ui b/plugins-unmaintained/Themes/Teracopy/interface.ui new file mode 100644 index 0000000..a5274b3 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/interface.ui @@ -0,0 +1,394 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>interfaceCopy</class> + <widget class="QWidget" name="interfaceCopy"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>476</width> + <height>364</height> + </rect> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Minimum"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>430</width> + <height>0</height> + </size> + </property> + <property name="windowTitle"> + <string notr="true">94% done (42BK/s)</string> + </property> + <property name="windowIcon"> + <iconset resource="resources.qrc"> + <normaloff>:/Themes/Teracopy/resources/main.png</normaloff>:/Themes/Teracopy/resources/main.png</iconset> + </property> + <layout class="QVBoxLayout" name="verticalLayout"> + <property name="spacing"> + <number>1</number> + </property> + <property name="sizeConstraint"> + <enum>QLayout::SetMinimumSize</enum> + </property> + <property name="leftMargin"> + <number>2</number> + </property> + <property name="rightMargin"> + <number>2</number> + </property> + <item> + <layout class="QHBoxLayout"> + <property name="spacing"> + <number>2</number> + </property> + <item> + <widget class="QLabel" name="from"> + <property name="text"> + <string notr="true">-</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_5"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QLabel" name="labelNumberFile"/> + </item> + </layout> + </item> + <item> + <widget class="QProgressBar" name="progressBar_file"> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>16</height> + </size> + </property> + <property name="maximum"> + <number>65535</number> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_4"> + <item> + <widget class="QLabel" name="overall"> + <property name="text"> + <string notr="true">Total: -</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QLabel" name="labelTimeRemaining"> + <property name="text"> + <string notr="true"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">&nbsp;</p></body></html></string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="QProgressBar" name="progressBar_all"> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>16</height> + </size> + </property> + <property name="maximum"> + <number>65535</number> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout"> + <property name="spacing"> + <number>4</number> + </property> + <item> + <widget class="QPushButton" name="moreButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>80</width> + <height>25</height> + </size> + </property> + <property name="text"> + <string>&More</string> + </property> + <property name="checkable"> + <bool>true</bool> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <widget class="QToolButton" name="toolButtonMenu"> + <property name="text"> + <string>...</string> + </property> + <property name="popupMode"> + <enum>QToolButton::InstantPopup</enum> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_2"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="pauseButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>80</width> + <height>25</height> + </size> + </property> + <property name="text"> + <string>&Pause</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="skipButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>80</width> + <height>25</height> + </size> + </property> + <property name="text"> + <string>&Skip</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="cancelButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>80</width> + <height>25</height> + </size> + </property> + <property name="text"> + <string>&Cancel</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <spacer name="horizontalSpacer_3"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QLabel" name="label_2"> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>16</height> + </size> + </property> + <property name="text"> + <string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://ultracopier.first-world.info/"><span style=" font-size:8pt; text-decoration: underline; color:#0057ae;">Support Ultracopier</span></a></p></body></html></string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="QTreeView" name="TransferList"> + <property name="selectionMode"> + <enum>QAbstractItemView::NoSelection</enum> + </property> + <property name="rootIsDecorated"> + <bool>false</bool> + </property> + </widget> + </item> + </layout> + <action name="actionAddFile"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Teracopy/resources/add.png</normaloff>:/Themes/Teracopy/resources/add.png</iconset> + </property> + <property name="text"> + <string>Add file</string> + </property> + </action> + <action name="actionAddFolder"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Teracopy/resources/add.png</normaloff>:/Themes/Teracopy/resources/add.png</iconset> + </property> + <property name="text"> + <string>Add folder</string> + </property> + </action> + <action name="actionAddFileToMove"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Teracopy/resources/add.png</normaloff>:/Themes/Teracopy/resources/add.png</iconset> + </property> + <property name="text"> + <string>Move file(s)</string> + </property> + </action> + <action name="actionAddFolderToMove"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Teracopy/resources/add.png</normaloff>:/Themes/Teracopy/resources/add.png</iconset> + </property> + <property name="text"> + <string>Move folder</string> + </property> + </action> + <action name="actionAddFileToCopy"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Teracopy/resources/add.png</normaloff>:/Themes/Teracopy/resources/add.png</iconset> + </property> + <property name="text"> + <string>Copy file(s)</string> + </property> + </action> + <action name="actionAddFolderToCopy"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Teracopy/resources/add.png</normaloff>:/Themes/Teracopy/resources/add.png</iconset> + </property> + <property name="text"> + <string>Copy folder</string> + </property> + </action> + </widget> + <resources> + <include location="resources.qrc"/> + </resources> + <connections> + <connection> + <sender>moreButton</sender> + <signal>toggled(bool)</signal> + <receiver>label_2</receiver> + <slot>setVisible(bool)</slot> + <hints> + <hint type="sourcelabel"> + <x>72</x> + <y>106</y> + </hint> + <hint type="destinationlabel"> + <x>353</x> + <y>144</y> + </hint> + </hints> + </connection> + <connection> + <sender>cancelButton</sender> + <signal>clicked()</signal> + <receiver>interfaceCopy</receiver> + <slot>close()</slot> + <hints> + <hint type="sourcelabel"> + <x>465</x> + <y>114</y> + </hint> + <hint type="destinationlabel"> + <x>475</x> + <y>112</y> + </hint> + </hints> + </connection> + </connections> +</ui> diff --git a/plugins-unmaintained/Themes/Teracopy/plugin.json b/plugins-unmaintained/Themes/Teracopy/plugin.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/plugin.json @@ -0,0 +1 @@ +{}
\ No newline at end of file diff --git a/plugins-unmaintained/Themes/Teracopy/resources.qrc b/plugins-unmaintained/Themes/Teracopy/resources.qrc new file mode 100644 index 0000000..39105a8 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources.qrc @@ -0,0 +1,12 @@ +<RCC> + <qresource prefix="/Themes/Teracopy"> + <file>resources/SystemTrayIcon/add.png</file> + <file>resources/SystemTrayIcon/exit.png</file> + <file>resources/SystemTrayIcon/informations.png</file> + <file>resources/SystemTrayIcon/options.png</file> + <file>resources/checkbox.png</file> + <file>resources/main.png</file> + <file>resources/player_play.png</file> + <file>resources/player_pause.png</file> + </qresource> +</RCC> diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/add.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/add.png Binary files differnew file mode 100644 index 0000000..7932127 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/add.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/exit.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/exit.png Binary files differnew file mode 100644 index 0000000..ae3c4e8 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/exit.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/informations.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/informations.png Binary files differnew file mode 100644 index 0000000..5b7b255 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/informations.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/options.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/options.png Binary files differnew file mode 100644 index 0000000..23ec531 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/options.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Caught_Unix.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Caught_Unix.png Binary files differnew file mode 100644 index 0000000..6f5d1cf --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Caught_Unix.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Caught_Windows.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Caught_Windows.png Binary files differnew file mode 100644 index 0000000..5464856 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Caught_Windows.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png Binary files differnew file mode 100644 index 0000000..3961215 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png Binary files differnew file mode 100644 index 0000000..45d6315 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Uncaught_Unix.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Uncaught_Unix.png Binary files differnew file mode 100644 index 0000000..ac4299a --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Uncaught_Unix.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Uncaught_Windows.png b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Uncaught_Windows.png Binary files differnew file mode 100644 index 0000000..6e6bae7 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/SystemTrayIcon/systray_Uncaught_Windows.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/checkbox.png b/plugins-unmaintained/Themes/Teracopy/resources/checkbox.png Binary files differnew file mode 100644 index 0000000..f7f4388 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/checkbox.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/main.png b/plugins-unmaintained/Themes/Teracopy/resources/main.png Binary files differnew file mode 100644 index 0000000..5464856 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/main.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/player_pause.png b/plugins-unmaintained/Themes/Teracopy/resources/player_pause.png Binary files differnew file mode 100644 index 0000000..68ee21f --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/player_pause.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources/player_play.png b/plugins-unmaintained/Themes/Teracopy/resources/player_play.png Binary files differnew file mode 100644 index 0000000..a1c5b83 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources/player_play.png diff --git a/plugins-unmaintained/Themes/Teracopy/resources_unix.qrc b/plugins-unmaintained/Themes/Teracopy/resources_unix.qrc new file mode 100644 index 0000000..46e3020 --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources_unix.qrc @@ -0,0 +1,7 @@ +<RCC> + <qresource prefix="/Themes/Teracopy"> + <file>resources/SystemTrayIcon/systray_Caught_Unix.png</file> + <file>resources/SystemTrayIcon/systray_Semiuncaught_Unix.png</file> + <file>resources/SystemTrayIcon/systray_Uncaught_Unix.png</file> + </qresource> +</RCC> diff --git a/plugins-unmaintained/Themes/Teracopy/resources_windows.qrc b/plugins-unmaintained/Themes/Teracopy/resources_windows.qrc new file mode 100644 index 0000000..165123a --- /dev/null +++ b/plugins-unmaintained/Themes/Teracopy/resources_windows.qrc @@ -0,0 +1,7 @@ +<RCC> + <qresource prefix="/Themes/Teracopy"> + <file>resources/SystemTrayIcon/systray_Caught_Windows.png</file> + <file>resources/SystemTrayIcon/systray_Semiuncaught_Windows.png</file> + <file>resources/SystemTrayIcon/systray_Uncaught_Windows.png</file> + </qresource> +</RCC> |