diff options
Diffstat (limited to 'plugins-unmaintained')
198 files changed, 10693 insertions, 0 deletions
diff --git a/plugins-unmaintained/Listener/dbus/Catchcopy.cpp b/plugins-unmaintained/Listener/dbus/Catchcopy.cpp new file mode 100644 index 0000000..6c46af2 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/Catchcopy.cpp @@ -0,0 +1,17 @@ +#include "Catchcopy.h" + +#include <QCoreApplication> + +Catchcopy::Catchcopy() +{ +} + +void Catchcopy::copy(const QStringList &sources,const QString &destination) +{ + emit newCopy(0,sources,destination); +} + +void Catchcopy::move(const QStringList &sources,const QString &destination) +{ + emit newMove(0,sources,destination); +} diff --git a/plugins-unmaintained/Listener/dbus/Catchcopy.h b/plugins-unmaintained/Listener/dbus/Catchcopy.h new file mode 100644 index 0000000..d28a253 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/Catchcopy.h @@ -0,0 +1,20 @@ +#ifndef CATCHCOPY_H +#define CATCHCOPY_H + +#include <QObject> +#include <QStringList> + +class Catchcopy : public QObject +{ + Q_OBJECT +public: + explicit Catchcopy(); +signals: + void newCopy(const quint32 &id,const QStringList &sources,const QString &destination); + void newMove(const quint32 &id,const QStringList &sources,const QString &destination); +public slots: + Q_SCRIPTABLE void copy(const QStringList &sources,const QString &destination); + Q_SCRIPTABLE void move(const QStringList &sources,const QString &destination); +}; + +#endif // CATCHCOPY_H diff --git a/plugins-unmaintained/Listener/dbus/DebugEngineMacro.h b/plugins-unmaintained/Listener/dbus/DebugEngineMacro.h new file mode 100644 index 0000000..4582010 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/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/Listener/dbus/Environment.h b/plugins-unmaintained/Listener/dbus/Environment.h new file mode 100644 index 0000000..265a5a6 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/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/Listener/dbus/StructEnumDefinition.h b/plugins-unmaintained/Listener/dbus/StructEnumDefinition.h new file mode 100644 index 0000000..c1758f4 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/StructEnumDefinition.h @@ -0,0 +1 @@ +#include "../../../StructEnumDefinition.h" diff --git a/plugins-unmaintained/Listener/dbus/Variable.h b/plugins-unmaintained/Listener/dbus/Variable.h new file mode 100644 index 0000000..963d0c8 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/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/Listener/dbus/documentation.dox b/plugins-unmaintained/Listener/dbus/documentation.dox new file mode 100644 index 0000000..2eb3c87 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/documentation.dox @@ -0,0 +1,36 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- **/ + +/* + This file contains NO source code, just some documentation for doxygen to + parse. +*/ + +/*! + \mainpage dbus + + \section mainpage_overview Overview + + It's alternative listener for linux, it's very more simpler. You send just your copy/move, no more. No return.\n + More informations on <a href="http://ultracopier-wiki.first-world.info/">the wiki of ultracopier</a>. + + \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 mainpage_algorithm Dbus method + + you have this method exported to dbus: + <ul> + <li>void copy(const QStringList &sources,const QString &destination)</li> + <li>void move(const QStringList &sources,const QString &destination)</li> + </ul> + + \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/Listener/dbus/informations.xml b/plugins-unmaintained/Listener/dbus/informations.xml new file mode 100644 index 0000000..497371b --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/informations.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<package> + <title xml:lang="en"><![CDATA[Listener for catchcopy in dbus]]></title><!-- english is required --> + <title xml:lang="fr"><![CDATA[Écouteur pour catchcopy en dbus]]></title> + <!-- What kind of plugin this is --> + <category>Listener</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[Listener for catchcopy in dbus. Allow to receive copy list from plugin/explorer compatible with catchcopy.]]></description> + <description xml:lang="fr"><![CDATA[Écouteur pour catchcopy en dbus. Permet de recevoir un liste de copie venant d'un plugin/explorateur avec catchcopy.]]></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>dbus</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/Listener/dbus/listener.cpp b/plugins-unmaintained/Listener/dbus/listener.cpp new file mode 100644 index 0000000..50ed196 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/listener.cpp @@ -0,0 +1,85 @@ +#include "listener.h" + +Listener::Listener() +{ + connect(&catchcopy,&Catchcopy::newCopy, this,&Listener::newCopy); + connect(&catchcopy,&Catchcopy::newMove, this,&Listener::newMove); +} + +void Listener::listen() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + if (!QDBusConnection::sessionBus().isConnected()) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + emit newState(Ultracopier::NotListening); + return; + } + if (!QDBusConnection::sessionBus().registerService("info.first-world.catchcopy")) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QDBusConnection::sessionBus().lastError().message()); + emit newState(Ultracopier::NotListening); + return; + } + if(!QDBusConnection::sessionBus().registerObject("/", &catchcopy, QDBusConnection::ExportAllSlots)) + { + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,QDBusConnection::sessionBus().lastError().message()); + emit newState(Ultracopier::NotListening); + return; + } + emit newState(Ultracopier::FullListening); +} + +void Listener::close() +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start"); + QDBusConnection::sessionBus().unregisterObject("/"); + QDBusConnection::sessionBus().unregisterService("info.first-world.catchcopy"); + emit newState(Ultracopier::NotListening); +} + +const QString Listener::errorString() const +{ + return "Unknow error"; +} + +void Listener::setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,const bool &portableVersion) +{ + Q_UNUSED(options); + Q_UNUSED(writePath); + Q_UNUSED(pluginPath); + Q_UNUSED(portableVersion); +} + +/// \brief to get the options widget, NULL if not have +QWidget * Listener::options() +{ + return NULL; +} + +void Listener::transferFinished(const quint32 &orderId,const bool &withError) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start, orderId: "+QString::number(orderId)+", withError: "+QString::number(withError)); +} + +void Listener::transferCanceled(const quint32 &orderId) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start, orderId: "+QString::number(orderId)); +} + +/// \brief to reload the translation, because the new language have been loaded +void Listener::newLanguageLoaded() +{ +} + +void Listener::error(QString error) +{ + Q_UNUSED(error); +} + +void Listener::clientName(quint32 client,QString name) +{ + Q_UNUSED(client); + Q_UNUSED(name); + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Information,QStringLiteral("clientName: %1, for the id: %2").arg(name).arg(client)); +} diff --git a/plugins-unmaintained/Listener/dbus/listener.h b/plugins-unmaintained/Listener/dbus/listener.h new file mode 100644 index 0000000..fcb95cd --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/listener.h @@ -0,0 +1,49 @@ +/** \file listener.h +\brief Define the server compatible with Ultracopier interface +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef SERVER_H +#define SERVER_H + +#include <QObject> +#include <QtDBus/QtDBus> +#include <QtDBus/QDBusConnection> + +#include "Catchcopy.h" +#include "Environment.h" +#include "../../../interface/PluginInterface_Listener.h" + +/// \brief Define the server compatible with Ultracopier interface +class Listener : public PluginInterface_Listener +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "first-world.info.ultracopier.PluginInterface.Listener/1.0.0.0" FILE "plugin.json") + Q_INTERFACES(PluginInterface_Listener) +public: + Listener(); + /// \brief try listen the copy/move + void listen(); + /// \brief stop listen to copy/move + void close(); + /// \brief return the error strong + const QString errorString() const; + /// \brief set resources for this plugins + void setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,const bool &portableVersion); + /// \brief to get the options widget, NULL if not have + QWidget * options(); +public slots: + /// \brief say to the client that's the copy/move is finished + void transferFinished(const quint32 &orderId,const bool &withError); + /// \brief say to the client that's the copy/move is finished + void transferCanceled(const quint32 &orderId); + /// \brief to reload the translation, because the new language have been loaded + void newLanguageLoaded(); +private: + Catchcopy catchcopy; +private slots: + void error(QString error); + void clientName(quint32 client,QString name); +}; + +#endif // SERVER_H diff --git a/plugins-unmaintained/Listener/dbus/listener.pro b/plugins-unmaintained/Listener/dbus/listener.pro new file mode 100644 index 0000000..16cd3d3 --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/listener.pro @@ -0,0 +1,19 @@ +CONFIG += c++11 +QMAKE_CXXFLAGS+="-std=c++0x -Wall -Wextra" +mac:QMAKE_CXXFLAGS+="-stdlib=libc++" + +TEMPLATE = lib +CONFIG += plugin +QT += network dbus +HEADERS = \ + $$PWD/listener.h \ + $$PWD/Environment.h \ + $$PWD/Variable.h \ + $$PWD/DebugEngineMacro.h \ + $$PWD/StructEnumDefinition.h \ + $$PWD/../../../interface/PluginInterface_Listener.h \ + $$PWD/Catchcopy.h +SOURCES = \ + $$PWD/listener.cpp \ + $$PWD/Catchcopy.cpp +TARGET = $$qtLibraryTarget(listener) diff --git a/plugins-unmaintained/Listener/dbus/plugin.json b/plugins-unmaintained/Listener/dbus/plugin.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/plugins-unmaintained/Listener/dbus/plugin.json @@ -0,0 +1 @@ +{}
\ No newline at end of file diff --git a/plugins-unmaintained/PluginLoader/keybinding/DebugEngineMacro.h b/plugins-unmaintained/PluginLoader/keybinding/DebugEngineMacro.h new file mode 100644 index 0000000..f9b5349 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/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_PLUGIN_DEBUG + #define ULTRACOPIER_DEBUGCONSOLE(a,b) void() +#endif // ULTRACOPIER_PLUGIN_DEBUG + +#endif // DEBUGENGINEMACRO_H + + + + diff --git a/plugins-unmaintained/PluginLoader/keybinding/Environment.h b/plugins-unmaintained/PluginLoader/keybinding/Environment.h new file mode 100644 index 0000000..265a5a6 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/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/PluginLoader/keybinding/KeyBind.cpp b/plugins-unmaintained/PluginLoader/keybinding/KeyBind.cpp new file mode 100644 index 0000000..0fd5287 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/KeyBind.cpp @@ -0,0 +1,11 @@ +#include "KeyBind.h" + +KeyBind::KeyBind(QWidget *parent) : + QLineEdit(parent) +{ +} + +void KeyBind::keyPressEvent(QKeyEvent * event) +{ + emit newKey(event); +} diff --git a/plugins-unmaintained/PluginLoader/keybinding/KeyBind.h b/plugins-unmaintained/PluginLoader/keybinding/KeyBind.h new file mode 100644 index 0000000..f4abf68 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/KeyBind.h @@ -0,0 +1,18 @@ +#ifndef KEYBIND_H +#define KEYBIND_H + +#include <QLineEdit> + +class KeyBind : public QLineEdit +{ + Q_OBJECT +public: + explicit KeyBind(QWidget *parent = 0); + +signals: + void newKey(QKeyEvent * event); +public slots: + void keyPressEvent(QKeyEvent * event); +}; + +#endif // KEYBIND_H diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/ar/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/ar/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/ar/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/de/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/de/translation.ts new file mode 100644 index 0000000..9c19382 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/de/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="de" sourcelanguage="en"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/el/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/el/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/el/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/en/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/en/translation.ts new file mode 100644 index 0000000..5315a75 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/en/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="en"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/es/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/es/translation.ts new file mode 100644 index 0000000..ddce2f5 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/es/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="es" sourcelanguage="en"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/fr/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/fr/translation.ts new file mode 100644 index 0000000..4c23f0c --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/fr/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="fr" sourcelanguage="en"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/hi/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/hi/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/hi/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/hu/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/hu/translation.ts new file mode 100644 index 0000000..d6fed88 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/hu/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="hu"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/id/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/id/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/id/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/it/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/it/translation.ts new file mode 100644 index 0000000..61c0491 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/it/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="it_IT"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/ja/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/ja/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/ja/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/ko/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/ko/translation.ts new file mode 100644 index 0000000..7d70aed --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/ko/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="ko_KR"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/nl/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/nl/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/nl/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/no/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/no/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/no/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/pl/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/pl/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/pl/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/pt/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/pt/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/pt/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/ru/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/ru/translation.ts new file mode 100644 index 0000000..2d19eed --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/ru/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="ru" sourcelanguage="en"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/th/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/th/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/th/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/tr/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/tr/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/tr/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/Languages/zh/translation.ts b/plugins-unmaintained/PluginLoader/keybinding/Languages/zh/translation.ts new file mode 100644 index 0000000..6401616 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Languages/zh/translation.ts @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +</TS> diff --git a/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.cpp b/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.cpp new file mode 100644 index 0000000..a48e61f --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.cpp @@ -0,0 +1,55 @@ +#include "OptionsWidget.h"
+#include "KeyBind.h"
+#include "ui_OptionsWidget.h"
+
+#include <QKeyEvent>
+
+OptionsWidget::OptionsWidget(QWidget *parent) :
+ QWidget(parent),
+ modifier(QList<int>() << Qt::Key_Control << Qt::Key_Shift << Qt::Key_Super_R << Qt::Key_Super_L << Qt::Key_Meta << Qt::Key_Alt << Qt::Key_AltGr),
+ ui(new Ui::OptionsWidget)
+{
+ ui->setupUi(this);
+
+ keyBind=new KeyBind(this);
+ ui->vboxLayout->addWidget(keyBind);
+ connect(keyBind,&KeyBind::newKey,this,&OptionsWidget::newKeyBind);
+}
+
+OptionsWidget::~OptionsWidget()
+{
+ delete ui;
+}
+
+void OptionsWidget::retranslate()
+{
+ ui->retranslateUi(this);
+}
+
+void OptionsWidget::setKeyBind(const QKeySequence &keySequence)
+{
+ keyBind->setText(keySequence.toString());
+}
+
+void OptionsWidget::newKey(QKeyEvent * event)
+{
+ int keyInt = event->key();
+ if(!modifier.contains(keyInt))
+ {
+ const Qt::KeyboardModifiers &modifiers = event->modifiers();
+ if(modifiers & Qt::ShiftModifier)
+ keyInt += Qt::SHIFT;
+ if(modifiers & Qt::ControlModifier)
+ keyInt += Qt::CTRL;
+ if(modifiers & Qt::AltModifier)
+ keyInt += Qt::ALT;
+ if(modifiers & Qt::MetaModifier)
+ keyInt += Qt::META;
+
+ const QKeySequence &keySeq = QKeySequence(keyInt);
+ keyBind->setText(keySeq.toString());
+
+ sendKeyBind(keySeq);
+ }
+}
+
diff --git a/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.h b/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.h new file mode 100644 index 0000000..e0d8e4b --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.h @@ -0,0 +1,31 @@ +#ifndef OptionsWidget_H
+#define OptionsWidget_H
+
+#include <QWidget>
+#include "KeyBind.h"
+
+namespace Ui {
+class OptionsWidget;
+}
+
+class OptionsWidget : public QWidget
+{
+ Q_OBJECT
+
+public:
+ explicit OptionsWidget(QWidget *parent = 0);
+ ~OptionsWidget();
+ void setKeyBind(const QKeySequence &keySequence);
+ void retranslate();
+private:
+ const QList<int> modifier;
+ Ui::OptionsWidget *ui;
+ KeyBind *keyBind;
+private slots:
+ void newKey(QKeyEvent * event);
+signals:
+ void sendKeyBind(const QKeySequence &keySequence);
+ void newKeyBind(QKeyEvent * event);
+};
+
+#endif // OptionsWidget_H
diff --git a/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.ui b/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.ui new file mode 100644 index 0000000..2bc3cbe --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/OptionsWidget.ui @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>OptionsWidget</class>
+ <widget class="QWidget" name="OptionsWidget">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>195</width>
+ <height>58</height>
+ </rect>
+ </property>
+ <layout class="QVBoxLayout">
+ <item>
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/plugins-unmaintained/PluginLoader/keybinding/PlatformMacro.h b/plugins-unmaintained/PluginLoader/keybinding/PlatformMacro.h new file mode 100644 index 0000000..f7586b0 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/PlatformMacro.h @@ -0,0 +1 @@ +#include "../../../PlatformMacro.h" diff --git a/plugins-unmaintained/PluginLoader/keybinding/StructEnumDefinition.h b/plugins-unmaintained/PluginLoader/keybinding/StructEnumDefinition.h new file mode 100644 index 0000000..c1758f4 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/StructEnumDefinition.h @@ -0,0 +1 @@ +#include "../../../StructEnumDefinition.h" diff --git a/plugins-unmaintained/PluginLoader/keybinding/Variable.h b/plugins-unmaintained/PluginLoader/keybinding/Variable.h new file mode 100644 index 0000000..90e1557 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/Variable.h @@ -0,0 +1,16 @@ +/** \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
+//#define ULTRACOPIER_PLUGIN_ALL_IN_ONE
+
+#endif // VARIABLE_H
+
+
+
diff --git a/plugins-unmaintained/PluginLoader/keybinding/documentation.dox b/plugins-unmaintained/PluginLoader/keybinding/documentation.dox new file mode 100644 index 0000000..b9c9d13 --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/documentation.dox @@ -0,0 +1,33 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- **/ + +/* + This file contains NO source code, just some documentation for doxygen to + parse. +*/ + +/*! + \mainpage catchcopy-v0002 + + \section mainpage_overview Overview + + Is the plugin to load the catchcopy plugin into the windows file manager. Mostly it use the command: regsvr32 /s catchcopy32.dll/catchcopy64.dll\n + More informations on <a href="http://ultracopier-wiki.first-world.info/">the wiki of ultracopier</a>. + + \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 mainpage_algorithm Requirements + + You can see the documentation on <a href="http://catchcopy.first-world.info/">Catchcopy web site</a>. It use catchcopy32.dll/catchcopy64.dll as explorer plugin for the windows's file manager. Need it into the plugins.\n + In function if Ultracopier is compiled by portable version, try load the dll by other way. + + \section license GPL Version 3 + The code source is under GPL3. + +*/ diff --git a/plugins-unmaintained/PluginLoader/keybinding/informations.xml b/plugins-unmaintained/PluginLoader/keybinding/informations.xml new file mode 100644 index 0000000..3386aaa --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/informations.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<package> + <title xml:lang="en"><![CDATA[Plugin loader for catchcopy v0002]]></title><!-- english is required --> + <title xml:lang="fr"><![CDATA[Chargeur de plugin pour catchcopy v0002]]></title> + <!-- What kind of plugin this is --> + <category>PluginLoader</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[Plugin loader for catchcopy v0002. Allow to receive copy list from plugin/explorer compatible with catchcopy.]]></description> + <description xml:lang="fr"><![CDATA[Chargeur de plugin pour catchcopy v0002. Permet de recevoir un liste de copie venant d'un plugin/explorateur avec catchcopy.]]></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>keybinding</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[ + =ultracopier-1.0 + ]]></dependencies> +</package>
\ No newline at end of file diff --git a/plugins-unmaintained/PluginLoader/keybinding/plugin.json b/plugins-unmaintained/PluginLoader/keybinding/plugin.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/plugin.json @@ -0,0 +1 @@ +{}
\ No newline at end of file diff --git a/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.cpp b/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.cpp new file mode 100644 index 0000000..387b09e --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.cpp @@ -0,0 +1,61 @@ +/** \file pluginLoader.cpp +\brief Define the session plugin loader test +\author alpha_one_x86 */ + +#include "pluginLoader.h" +#include "PlatformMacro.h" + +#include <QFile> +#include <QDir> + +#ifndef Q_OS_UNIX +#error "Only for unix" +#endif + +KeyBindPlugin::KeyBindPlugin() +{ + connect(&optionsWidget,&OptionsWidget::sendKeyBind,this,&KeyBindPlugin::setKeyBind); +} + +KeyBindPlugin::~KeyBindPlugin() +{ +} + +void KeyBindPlugin::setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,const bool &portableVersion) +{ + Q_UNUSED(options); + Q_UNUSED(writePath); + Q_UNUSED(pluginPath); + Q_UNUSED(portableVersion); + this->optionsEngine=options; + if(optionsEngine!=NULL) + { + QList<QPair<QString, QVariant> > KeysList; + KeysList.append(qMakePair(QStringLiteral("keySequence"),QString())); + optionsEngine->addOptionGroup(KeysList); + optionsWidget.setKeyBind(QKeySequence::fromString(optionsEngine->getOptionValue("keySequence").toString())); + } +} + +/// \brief to get the options widget, NULL if not have +QWidget * KeyBindPlugin::options() +{ + return &optionsWidget; +} + +void KeyBindPlugin::newLanguageLoaded() +{ + optionsWidget.retranslate(); +} + +/// \brief try enable/disable the catching +void KeyBindPlugin::setEnabled(const bool &needBeRegistred) +{ + Q_UNUSED(needBeRegistred); +} + +void KeyBindPlugin::setKeyBind(const QKeySequence &keySequence) +{ + optionsEngine->setOptionValue("keySequence",keySequence); +} + diff --git a/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.h b/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.h new file mode 100644 index 0000000..1361c0d --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.h @@ -0,0 +1,47 @@ +/** \file pluginLoader.h +\brief Define the plugin loader +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef PLUGIN_LOADER_TEST_H +#define PLUGIN_LOADER_TEST_H + +#include <QObject> +#include <QMessageBox> + +#include <QString> +#include <QStringList> +#include <QProcess> +#include <QSet> +#include <QKeySequence> + +#include "../../../interface/PluginInterface_PluginLoader.h" +#include "Environment.h" +#include "OptionsWidget.h" + +/// \brief \brief Define the plugin loader +class KeyBindPlugin : public PluginInterface_PluginLoader +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "first-world.info.ultracopier.PluginInterface.PluginLoader/1.0.0.0" FILE "plugin.json") + Q_INTERFACES(PluginInterface_PluginLoader) +public: + KeyBindPlugin(); + ~KeyBindPlugin(); + /// \brief try enable/disable the catching + void setEnabled(const bool &needBeRegistred); + /// \brief to set resources, writePath can be empty if read only mode + void setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,const bool &portableVersion); + /// \brief to get the options widget, NULL if not have + QWidget * options(); +public slots: + /// \brief to reload the translation, because the new language have been loaded + void newLanguageLoaded(); +private: + OptionInterface * optionsEngine; + OptionsWidget optionsWidget; +private slots: + void setKeyBind(const QKeySequence &keySequence); +}; + +#endif // PLUGIN_LOADER_TEST_H diff --git a/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.pro b/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.pro new file mode 100644 index 0000000..ad5404b --- /dev/null +++ b/plugins-unmaintained/PluginLoader/keybinding/pluginLoader.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 = \ + StructEnumDefinition.h \ + pluginLoader.h \ + DebugEngineMacro.h \ + Environment.h \ + Variable.h \ + PlatformMacro.h \ + ../../../interface/PluginInterface_PluginLoader.h \ + OptionsWidget.h \ + KeyBind.h +SOURCES = \ + pluginLoader.cpp \ + OptionsWidget.cpp \ + KeyBind.cpp +TARGET = $$qtLibraryTarget(pluginLoader) +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/pt/translation.ts \ + Languages/ru/translation.ts \ + Languages/th/translation.ts \ + Languages/tr/translation.ts \ + Languages/zh/translation.ts + +FORMS += \ + OptionsWidget.ui + +CONFIG(static, static|shared) { +DEFINES += ULTRACOPIER_PLUGIN_ALL_IN_ONE +} + diff --git a/plugins-unmaintained/SessionLoader/KDE4/DebugEngineMacro.h b/plugins-unmaintained/SessionLoader/KDE4/DebugEngineMacro.h new file mode 100644 index 0000000..4582010 --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/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/SessionLoader/KDE4/Environment.h b/plugins-unmaintained/SessionLoader/KDE4/Environment.h new file mode 100644 index 0000000..265a5a6 --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/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/SessionLoader/KDE4/StructEnumDefinition.h b/plugins-unmaintained/SessionLoader/KDE4/StructEnumDefinition.h new file mode 100644 index 0000000..c1758f4 --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/StructEnumDefinition.h @@ -0,0 +1 @@ +#include "../../../StructEnumDefinition.h" diff --git a/plugins-unmaintained/SessionLoader/KDE4/Variable.h b/plugins-unmaintained/SessionLoader/KDE4/Variable.h new file mode 100644 index 0000000..963d0c8 --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/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/SessionLoader/KDE4/documentation.dox b/plugins-unmaintained/SessionLoader/KDE4/documentation.dox new file mode 100644 index 0000000..cf5f3e4 --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/documentation.dox @@ -0,0 +1,32 @@ +/* -*- mode: C++ ; c-file-style: "stroustrup" -*- **/ + +/* + This file contains NO source code, just some documentation for doxygen to + parse. +*/ + +/*! + \mainpage KDE4 + + \section mainpage_overview Overview + + It control if it loaded with the session.\n + More informations on <a href="http://ultracopier-wiki.first-world.info/">the wiki of ultracopier</a>. + + \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 mainpage_algorithm Method + + It pass by ~/.kde4/Autostart/ultracopier.sh to set/get it. + + \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/SessionLoader/KDE4/informations.xml b/plugins-unmaintained/SessionLoader/KDE4/informations.xml new file mode 100644 index 0000000..1bf295b --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/informations.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<package> + <title xml:lang="en"><![CDATA[Session loader for test]]></title><!-- english is required --> + <title xml:lang="fr"><![CDATA[Chargeur de session pour des testes]]></title> + <!-- What kind of plugin this is --> + <category>SessionLoader</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[Test plugin to show how create SessionLoader plugin]]></description> + <description xml:lang="fr"><![CDATA[Plugin de test pour monter comment créer un plugin SessionLoader]]></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>KDE4</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/SessionLoader/KDE4/plugin.json b/plugins-unmaintained/SessionLoader/KDE4/plugin.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/plugin.json @@ -0,0 +1 @@ +{}
\ No newline at end of file diff --git a/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.cpp b/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.cpp new file mode 100644 index 0000000..8024264 --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.cpp @@ -0,0 +1,58 @@ +/** \file session-loader.cpp +\brief Define the session plugin loader test +\author alpha_one_x86 +*/ + +#include <QFile> +#include <QDir> +#include <QCoreApplication> + +#include "sessionLoader.h" +void KDESessionLoader::setEnabled(const bool &enabled) +{ + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Notice,"start, enabled: "+QString::number(enabled)); + QFile link(QDir::homePath()+"/.kde4/Autostart/ultracopier.sh"); + if(!enabled) + { + if(link.exists() && !link.remove()) + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Critical,"unable to remove from the startup: "+link.errorString()); + } + else + { + if(link.open(QIODevice::WriteOnly)) + { + link.write(QStringLiteral("#!/bin/bash\n").toLocal8Bit()); + link.write(QString(QCoreApplication::applicationFilePath()).toLocal8Bit()); + link.close(); + if(!link.setPermissions(QFile::ExeOwner|QFile::WriteOwner|QFile::ReadOwner)) + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Critical,"unable to set permissions: "+link.errorString()); + } + else + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Critical,"unable to open in writing the file: "+link.errorString()); + } +} + +bool KDESessionLoader::getEnabled() const +{ + //return the value into the variable + return QFile::exists(QDir::homePath()+"/.kde4/Autostart/ultracopier.sh"); +} + +void KDESessionLoader::setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,const bool &portableVersion) +{ + Q_UNUSED(options); + Q_UNUSED(writePath); + Q_UNUSED(pluginPath); + Q_UNUSED(portableVersion); +} + +/// \brief to get the options widget, NULL if not have +QWidget * KDESessionLoader::options() +{ + return NULL; +} + +/// \brief to reload the translation, because the new language have been loaded +void KDESessionLoader::newLanguageLoaded() +{ +} diff --git a/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.h b/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.h new file mode 100644 index 0000000..b037da7 --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.h @@ -0,0 +1,33 @@ +/** \file sessionLoader.h +\brief Define the session loader +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef SESSION_LOADER_PLUGIN_H +#define SESSION_LOADER_PLUGIN_H + +#include <QObject> +#include "Environment.h" +#include "../../../interface/PluginInterface_SessionLoader.h" + +/// \brief Define the session loader +class KDESessionLoader : public PluginInterface_SessionLoader +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "first-world.info.ultracopier.PluginInterface.SessionLoader/1.0.0.0" FILE "plugin.json") + Q_INTERFACES(PluginInterface_SessionLoader) +public: + /// \brief to set if it's enabled or not + void setEnabled(const bool &enabled); + /// \brief to get if is enabled + bool getEnabled() const; + /// \brief set the resources for the plugins + void setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,const bool &portableVersion); + /// \brief to get the options widget, NULL if not have + QWidget * options(); +public slots: + /// \brief to reload the translation, because the new language have been loaded + void newLanguageLoaded(); +}; + +#endif // SESSION_LOADER_PLUGIN_H diff --git a/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.pro b/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.pro new file mode 100644 index 0000000..4ac69b4 --- /dev/null +++ b/plugins-unmaintained/SessionLoader/KDE4/sessionLoader.pro @@ -0,0 +1,15 @@ +CONFIG += c++11 +QMAKE_CXXFLAGS+="-std=c++0x -Wall -Wextra" +mac:QMAKE_CXXFLAGS+="-stdlib=libc++" + +TEMPLATE = lib +CONFIG += plugin +HEADERS = \ + $$PWD/sessionLoader.h \ + $$PWD/StructEnumDefinition.h \ + $$PWD/Variable.h \ + $$PWD/Environment.h \ + $$PWD/DebugEngineMacro.h \ + $$PWD/../../../interface/PluginInterface_SessionLoader.h +SOURCES = sessionLoader.cpp +TARGET = $$qtLibraryTarget(sessionLoader) diff --git a/plugins-unmaintained/Themes/Clean/Languages/ar/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/ar/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/ar/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/de/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/de/translation.ts new file mode 100644 index 0000000..c505f80 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/de/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="de" sourcelanguage="en"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation>%1/%2 Dateien, %3/%4</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation>Aktion:</translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation>Warten</translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation>Datei hinzufügen</translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation>Ordner hinzufügen</translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation>Datei (en) verschieben</translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation>Ordner verschieben</translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation>Datei (en) kopieren</translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation>Ordner kopieren</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/el/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/el/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/el/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/en/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/en/translation.ts new file mode 100644 index 0000000..33bef34 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/en/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="en"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/es/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/es/translation.ts new file mode 100644 index 0000000..cfbceba --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/es/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="es" sourcelanguage="en"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation>%1/%2 archivos, %3/%4</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation>Acción:</translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation>Añadir archivo</translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation>Añadir carpeta</translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation>Mover archivo(s)</translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation>Mueva la carpeta</translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation>Copia el archivo(s)</translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation>Copia la carpeta</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/fr/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/fr/translation.ts new file mode 100644 index 0000000..1656d8b --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/fr/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="fr" sourcelanguage="en"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation>%1/%2 fichiers, %3/%4</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation>Action:</translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation>Déplacer des fichiers</translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation>Déplacer un dossier</translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation>Copier des fichiers</translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation>Copier un dossier</translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation>Ajouter un dossier</translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation>Ajout de fichier</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/hi/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/hi/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/hi/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/hu/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/hu/translation.ts new file mode 100644 index 0000000..3bd0e03 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/hu/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="hu"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation>%1/%2 fájl, %3/%4</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation>Művelet:</translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation>Várakozás</translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation>Fájl hozzáadása</translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation>Mappa hozzáadása</translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation>Fájl(ok) mozgatása</translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation>Mappa mozgatása</translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation>Fájl(ok) másolása</translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation>Mappa másolása</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/id/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/id/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/id/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/it/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/it/translation.ts new file mode 100644 index 0000000..7139344 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/it/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="it" sourcelanguage="en"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation>%1/%2 file, %3/%4</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation>Azione:</translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation>Aggiungi file</translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation>Aggiungi cartella</translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation>Sposta file</translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation>Sposta la cartella</translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation>Copia file</translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation>Copia cartella</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/ja/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/ja/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/ja/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/ko/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/ko/translation.ts new file mode 100644 index 0000000..4d94016 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/ko/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="ko_KR"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="+142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished">%1/%2 파일, %3/%4</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="+32"/> + <source>Action:</source> + <translation type="unfinished">실행:</translation> + </message> + <message> + <location line="+12"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+34"/> + <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/Clean/Languages/nl/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/nl/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/nl/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/no/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/no/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/no/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/pl/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/pl/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/pl/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/ru/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/ru/translation.ts new file mode 100644 index 0000000..2b1c013 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/ru/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="ru" sourcelanguage="en"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation>%1/%2 файлы, %3/%4</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation>Действие:</translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation>Добавить файл</translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation>Добавить папку</translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation>Перемещение файла (ов)</translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation>Перемещение папки</translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation>Копировать файл (ы)</translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation>Копировать папку</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/th/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/th/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/th/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/tr/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/tr/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/tr/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/Languages/zh/translation.ts b/plugins-unmaintained/Themes/Clean/Languages/zh/translation.ts new file mode 100644 index 0000000..6a85bd4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/Languages/zh/translation.ts @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>InterfacePlugin</name> + <message> + <location filename="../../interface.cpp" line="142"/> + <source>%1/%2 files, %3/%4</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="32"/> + <source>Action:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="44"/> + <source>Waiting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="78"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="87"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="96"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="105"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="114"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="123"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Clean/StructEnumDefinition.h b/plugins-unmaintained/Themes/Clean/StructEnumDefinition.h new file mode 100644 index 0000000..c1758f4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/StructEnumDefinition.h @@ -0,0 +1 @@ +#include "../../../StructEnumDefinition.h" diff --git a/plugins-unmaintained/Themes/Clean/documentation.dox b/plugins-unmaintained/Themes/Clean/documentation.dox new file mode 100644 index 0000000..589d9c7 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/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 Clean + + \section mainpage_overview Overview + + It's interface to have minimal interface for 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/Clean/factory.cpp b/plugins-unmaintained/Themes/Clean/factory.cpp new file mode 100644 index 0000000..6acbe3a --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/factory.cpp @@ -0,0 +1,65 @@ +/** \file factory.cpp +\brief Define the factory core +\author alpha_one_x86 +*/ + +#include "factory.h" + +PluginInterface_Themes * ThemesFactory::getInstance() +{ + InterfacePlugin * newInterface=new InterfacePlugin(facilityEngine); + connect(this,&ThemesFactory::reloadLanguage,newInterface,&InterfacePlugin::newLanguageLoaded); + return newInterface; +} + +void ThemesFactory::setResources(OptionInterface * options, const QString &writePath, const QString &pluginPath, FacilityInterface * facilityInterface, const bool &portableVersion) +{ + Q_UNUSED(options) + Q_UNUSED(writePath) + Q_UNUSED(pluginPath) + this->facilityEngine=facilityInterface; + Q_UNUSED(portableVersion) +} + +QWidget * ThemesFactory::options() +{ + return NULL; +} + +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/Clean/resources/"+fileName); +} + +void ThemesFactory::resetOptions() +{ +} + +void ThemesFactory::newLanguageLoaded() +{ + emit reloadLanguage(); +} diff --git a/plugins-unmaintained/Themes/Clean/factory.h b/plugins-unmaintained/Themes/Clean/factory.h new file mode 100644 index 0000000..f9b1ee2 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/factory.h @@ -0,0 +1,39 @@ +/** \file factory.h +\brief Define the factory, to create instance of the interface +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef FACTORY_H +#define FACTORY_H + +#include <QObject> +#include <QWidget> + +#include "interface.h" +#include "../../../interface/PluginInterface_Themes.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; + signals: + void reloadLanguage(); + public slots: + void resetOptions(); + void newLanguageLoaded(); + private: + FacilityInterface * facilityEngine; +}; + +#endif // FACTORY_H diff --git a/plugins-unmaintained/Themes/Clean/informations.xml b/plugins-unmaintained/Themes/Clean/informations.xml new file mode 100644 index 0000000..680d99a --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/informations.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<package> + <title xml:lang="en"><![CDATA[Clean style for Ultracopier]]></title><!-- english is required --> + <title xml:lang="fr"><![CDATA[Style Clean 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 RFC822 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[Clean style for Ultracopier]]></description> + <description xml:lang="fr"><![CDATA[Style Clean pour Ultracopier]]></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>Clean</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/Clean/interface.cpp b/plugins-unmaintained/Themes/Clean/interface.cpp new file mode 100644 index 0000000..3f2cd2a --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/interface.cpp @@ -0,0 +1,426 @@ +/** \file interface.cpp +\brief Define the interface core +\author alpha_one_x86 +*/ + +#include "interface.h" +#include "ui_interface.h" + +InterfacePlugin::InterfacePlugin(FacilityInterface * facilityEngine) : + ui(new Ui::interface()) +{ + ui->setupUi(this); + currentFile = 0; + totalFile = 0; + currentSize = 0; + totalSize = 0; + modeIsForced = false; + haveStarted = false; + this->facilityEngine = facilityEngine; + menu=new QMenu(this); + ui->toolButton->setMenu(menu); + updateModeAndType(); + + connect(ui->actionAddFile,&QAction::triggered,this,&InterfacePlugin::forcedModeAddFile); + connect(ui->actionAddFileToCopy,&QAction::triggered,this,&InterfacePlugin::forcedModeAddFileToCopy); + connect(ui->actionAddFileToMove,&QAction::triggered,this,&InterfacePlugin::forcedModeAddFileToMove); + connect(ui->actionAddFolderToCopy,&QAction::triggered,this,&InterfacePlugin::forcedModeAddFolderToCopy); + connect(ui->actionAddFolderToMove,&QAction::triggered,this,&InterfacePlugin::forcedModeAddFolderToMove); + connect(ui->actionAddFolder,&QAction::triggered,this,&InterfacePlugin::forcedModeAddFolder); + show(); +} + +InterfacePlugin::~InterfacePlugin() +{ + delete menu; +} + +void InterfacePlugin::forcedModeAddFile() +{ + emit userAddFile(mode); +} + +void InterfacePlugin::forcedModeAddFolder() +{ + emit userAddFolder(mode); +} + +void InterfacePlugin::forcedModeAddFileToCopy() +{ + emit userAddFile(Ultracopier::Copy); +} + +void InterfacePlugin::forcedModeAddFolderToCopy() +{ + emit userAddFolder(Ultracopier::Copy); +} + +void InterfacePlugin::forcedModeAddFileToMove() +{ + emit userAddFile(Ultracopier::Move); +} + +void InterfacePlugin::forcedModeAddFolderToMove() +{ + emit userAddFolder(Ultracopier::Move); +} + +void InterfacePlugin::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 InterfacePlugin::closeEvent(QCloseEvent *event) +{ + event->ignore(); + this->hide(); + emit cancel(); +} + +void InterfacePlugin::detectedSpeed(const quint64 &speed) +{ + Q_UNUSED(speed) +} + +QWidget * InterfacePlugin::getOptionsEngineWidget() +{ + return NULL; +} + +void InterfacePlugin::getOptionsEngineEnabled(const bool &isEnabled) +{ + Q_UNUSED(isEnabled) +} + +void InterfacePlugin::setCopyType(const Ultracopier::CopyType &type) +{ + this->type=type; + updateModeAndType(); +} + +void InterfacePlugin::forceCopyMode(const Ultracopier::CopyMode &mode) +{ + modeIsForced=true; + this->mode=mode; + updateModeAndType(); +} + +void InterfacePlugin::updateTitle() +{ + QString actionString; + switch(action) + { + case Ultracopier::Listing: + actionString=facilityEngine->translateText("Listing"); + break; + case Ultracopier::Copying: + actionString=facilityEngine->translateText("Copying"); + break; + case Ultracopier::CopyingAndListing: + actionString=facilityEngine->translateText("Listing and copying"); + break; + case Ultracopier::Idle: + actionString="Ultracopier"; + break; + } + this->setWindowTitle(actionString+" - "+tr("%1/%2 files, %3/%4").arg(currentFile).arg(totalFile).arg(currentSize).arg(totalSize)); +} + +void InterfacePlugin::actionInProgess(const Ultracopier::EngineActionInProgress &action) +{ + this->action=action; + switch(action) + { + case Ultracopier::Copying: + case Ultracopier::CopyingAndListing: + ui->progressBar->setMaximum(65535); + ui->progressBar->setMinimum(0); + break; + case Ultracopier::Listing: + ui->progressBar->setMaximum(0); + ui->progressBar->setMinimum(0); + break; + case Ultracopier::Idle: + if(haveStarted) + emit cancel(); + break; + default: + break; + } + switch(action) + { + case Ultracopier::Copying: + case Ultracopier::CopyingAndListing: + haveStarted=true; + break; + default: + break; + } +} + +void InterfacePlugin::newTransferStart(const Ultracopier::ItemOfCopyList &item) +{ + ui->text->setText(item.sourceFullPath); +} + +void InterfacePlugin::newTransferStop(const quint64 &id) +{ + Q_UNUSED(id) +} + +void InterfacePlugin::newFolderListing(const QString &path) +{ + if(action==Ultracopier::Listing) + ui->text->setText(path); +} + +void InterfacePlugin::remainingTime(const int &remainingSeconds) +{ + Q_UNUSED(remainingSeconds) +} + +void InterfacePlugin::newCollisionAction(const QString &action) +{ + Q_UNUSED(action) +} + +void InterfacePlugin::newErrorAction(const QString &action) +{ + Q_UNUSED(action) +} + +void InterfacePlugin::errorDetected() +{ +} + +/// \brief new error +void InterfacePlugin::errorToRetry(const QString &source,const QString &destination,const QString &error) +{ + Q_UNUSED(source); + Q_UNUSED(destination); + Q_UNUSED(error); +} + +void InterfacePlugin::setTransferListOperation(const Ultracopier::TransferListOperation &transferListOperation) +{ + Q_UNUSED(transferListOperation) +} + +//speed limitation +bool InterfacePlugin::setSpeedLimitation(const qint64 &speedLimitation) +{ + Q_UNUSED(speedLimitation) + return false; +} + +//get information about the copy +void InterfacePlugin::setGeneralProgression(const quint64 ¤t,const quint64 &total) +{ + ui->progressBar->setValue(((double)current/total)*65535); +} + +void InterfacePlugin::setCollisionAction(const QList<QPair<QString,QString> > &list) +{ + Q_UNUSED(list) +} + +void InterfacePlugin::setErrorAction(const QList<QPair<QString,QString> > &list) +{ + Q_UNUSED(list) +} + +//edit the transfer list +void InterfacePlugin::getActionOnList(const QList<Ultracopier::ReturnActionOnCopyList> &returnActions) +{ + Q_UNUSED(returnActions) +} + +void InterfacePlugin::haveExternalOrder() +{ + ui->toolButton->hide(); +} + +void InterfacePlugin::isInPause(const bool &isInPause) +{ + //resume in auto the pause + if(isInPause) + emit resume(); +} + +void InterfacePlugin::newLanguageLoaded() +{ + ui->retranslateUi(this); + updateTitle(); +} + +/* + Return[0]: totalFile + Return[1]: totalSize + Return[2]: currentFile + */ +void InterfacePlugin::synchronizeItems(const QList<Ultracopier::ReturnActionOnCopyList>& returnActions) +{ + loop_size=returnActions.size(); + index_for_loop=0; + while(index_for_loop<loop_size) + { + const Ultracopier::ReturnActionOnCopyList& action=returnActions.at(index_for_loop); + switch(action.type) + { + case Ultracopier::AddingItem: + { + totalFile++; + totalSize+=action.addAction.size; + } + break; + case Ultracopier::RemoveItem: + currentFile++; + break; + case Ultracopier::PreOperation: + { + ItemOfCopyListWithMoreInformations tempItem; + tempItem.currentProgression=0; + tempItem.generalData=action.addAction; + currentSize+=action.addAction.size; + InternalRunningOperation << tempItem; + } + break; + case Ultracopier::Transfer: + { + sub_index_for_loop=0; + sub_loop_size=InternalRunningOperation.size(); + while(sub_index_for_loop<sub_loop_size) + { + if(InternalRunningOperation.at(sub_index_for_loop).generalData.id==action.addAction.id) + { + InternalRunningOperation[sub_index_for_loop].actionType=action.type; + break; + } + sub_index_for_loop++; + } + } + break; + case Ultracopier::PostOperation: + { + sub_index_for_loop=0; + sub_loop_size=InternalRunningOperation.size(); + while(sub_index_for_loop<sub_loop_size) + { + if(InternalRunningOperation.at(sub_index_for_loop).generalData.id==action.addAction.id) + { + InternalRunningOperation.removeAt(sub_index_for_loop); + break; + } + sub_index_for_loop++; + } + } + break; + case Ultracopier::CustomOperation: + { + bool custom_with_progression=(action.addAction.size==1); + sub_index_for_loop=0; + sub_loop_size=InternalRunningOperation.size(); + while(sub_index_for_loop<sub_loop_size) + { + if(InternalRunningOperation.at(sub_index_for_loop).generalData.id==action.addAction.id) + { + InternalRunningOperation[sub_index_for_loop].actionType=action.type; + InternalRunningOperation[sub_index_for_loop].custom_with_progression=custom_with_progression; + InternalRunningOperation[sub_index_for_loop].currentProgression=0; + break; + } + sub_index_for_loop++; + } + } + break; + default: + //unknow code, ignore it + break; + } + index_for_loop++; + } +} + +/** \brief support speed limitation */ +void InterfacePlugin::setSupportSpeedLimitation(const bool &supportSpeedLimitationBool) +{ + Q_UNUSED(supportSpeedLimitationBool); +} + +void InterfacePlugin::setFileProgression(const QList<Ultracopier::ProgressionItem> &progressionList) +{ + loop_size=InternalRunningOperation.size(); + sub_loop_size=progressionList.size(); + index_for_loop=0; + while(index_for_loop<loop_size) + { + sub_index_for_loop=0; + while(sub_index_for_loop<sub_loop_size) + { + if(progressionList.at(sub_index_for_loop).id==InternalRunningOperation.at(index_for_loop).generalData.id) + { + InternalRunningOperation[index_for_loop].generalData.size=progressionList.at(sub_index_for_loop).total; + InternalRunningOperation[index_for_loop].currentProgression=(progressionList.at(sub_index_for_loop).currentRead+progressionList.at(sub_index_for_loop).currentWrite)/2; + break; + } + sub_index_for_loop++; + } + index_for_loop++; + } +} + +InterfacePlugin::currentTransfertItem InterfacePlugin::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/Clean/interface.h b/plugins-unmaintained/Themes/Clean/interface.h new file mode 100644 index 0000000..e5b5c36 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/interface.h @@ -0,0 +1,141 @@ +/** \file interface.h +\brief Define the interface +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef INTERFACE_TEST_H +#define INTERFACE_TEST_H + +#include <QObject> +#include <QWidget> +#include <QMenu> +#include <QCloseEvent> + +#include "../../../interface/PluginInterface_Themes.h" + +namespace Ui { + class interface; +} + +/// \brief Define the interface +class InterfacePlugin : public PluginInterface_Themes +{ + Q_OBJECT +public slots: + //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 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); + //set the translate + void newLanguageLoaded(); + void synchronizeItems(const QList<Ultracopier::ReturnActionOnCopyList>& returnActions); + /** \brief support speed limitation */ + void setSupportSpeedLimitation(const bool &supportSpeedLimitationBool); +public: + /// \brief the transfer item with progression + struct ItemOfCopyListWithMoreInformations + { + quint64 currentProgression; + 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_file; + }; + /// \brief get the widget for the copy engine + QWidget * getOptionsEngineWidget(); + /// \brief to set if the copy engine is found + void getOptionsEngineEnabled(const bool &isEnabled); + /// \brief get action on the transfer list (add/move/remove) + void getActionOnList(const QList<Ultracopier::ReturnActionOnCopyList> &returnActions); + //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 &); +signals: + #ifdef ULTRACOPIER_PLUGIN_DEBUG + /// \brief To debug source + void debugInformation(const DebugLevel &level,const QString &fonction,const QString &text,const QString &file,const int &ligne); + #endif +public: + //constructor and destructor + InterfacePlugin(FacilityInterface * facilityEngine); + ~InterfacePlugin(); +private: + Ui::interface *ui; + quint64 currentFile; + quint64 totalFile; + quint64 currentSize; + quint64 totalSize; + void updateTitle(); + QMenu *menu; + Ultracopier::EngineActionInProgress action; + void closeEvent(QCloseEvent *event); + void updateModeAndType(); + bool modeIsForced; + Ultracopier::CopyType type; + Ultracopier::CopyMode mode; + bool haveStarted; + QList<ItemOfCopyListWithMoreInformations> InternalRunningOperation; + int loop_size,index_for_loop; + int sub_loop_size,sub_index_for_loop; + currentTransfertItem getCurrentTransfertItem(); + FacilityInterface * facilityEngine; +private slots: + void forcedModeAddFile(); + void forcedModeAddFolder(); + void forcedModeAddFileToCopy(); + void forcedModeAddFolderToCopy(); + void forcedModeAddFileToMove(); + void forcedModeAddFolderToMove(); +}; + +#endif // INTERFACE_TEST_H diff --git a/plugins-unmaintained/Themes/Clean/interface.pro b/plugins-unmaintained/Themes/Clean/interface.pro new file mode 100644 index 0000000..eb124c9 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/interface.pro @@ -0,0 +1,46 @@ +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 \ + ../../../interface/PluginInterface_Themes.h +SOURCES = interface.cpp \ + factory.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 + +FORMS += \ + interface.ui + +RESOURCES += \ + resources.qrc + +win32 { + RESOURCES += resources_windows.qrc +} +!win32 { + RESOURCES += resources_unix.qrc +} diff --git a/plugins-unmaintained/Themes/Clean/interface.ui b/plugins-unmaintained/Themes/Clean/interface.ui new file mode 100644 index 0000000..f178af7 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/interface.ui @@ -0,0 +1,131 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>interface</class> + <widget class="QWidget" name="interface"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>139</width> + <height>55</height> + </rect> + </property> + <property name="windowTitle"> + <string notr="true">Ultracopier</string> + </property> + <property name="windowIcon"> + <iconset> + <normaloff>:/systray_Caught_Unix.png</normaloff>:/systray_Caught_Unix.png</iconset> + </property> + <layout class="QVBoxLayout" name="verticalLayout"> + <property name="spacing"> + <number>0</number> + </property> + <property name="margin"> + <number>0</number> + </property> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QLabel" name="text"> + <property name="text"> + <string>Action:</string> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="action"> + <property name="font"> + <font> + <italic>true</italic> + </font> + </property> + <property name="text"> + <string>Waiting</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QProgressBar" name="progressBar"> + <property name="maximum"> + <number>65535</number> + </property> + </widget> + </item> + <item> + <widget class="QToolButton" name="toolButton"> + <property name="text"> + <string notr="true">...</string> + </property> + <property name="popupMode"> + <enum>QToolButton::InstantPopup</enum> + </property> + </widget> + </item> + </layout> + </item> + </layout> + <action name="actionAddFile"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Clean/resources/add.png</normaloff>:/Themes/Clean/resources/add.png</iconset> + </property> + <property name="text"> + <string>Add file</string> + </property> + </action> + <action name="actionAddFolder"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Clean/resources/add.png</normaloff>:/Themes/Clean/resources/add.png</iconset> + </property> + <property name="text"> + <string>Add folder</string> + </property> + </action> + <action name="actionAddFileToMove"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Clean/resources/add.png</normaloff>:/Themes/Clean/resources/add.png</iconset> + </property> + <property name="text"> + <string>Move file(s)</string> + </property> + </action> + <action name="actionAddFolderToMove"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Clean/resources/add.png</normaloff>:/Themes/Clean/resources/add.png</iconset> + </property> + <property name="text"> + <string>Move folder</string> + </property> + </action> + <action name="actionAddFileToCopy"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Clean/resources/add.png</normaloff>:/Themes/Clean/resources/add.png</iconset> + </property> + <property name="text"> + <string>Copy file(s)</string> + </property> + </action> + <action name="actionAddFolderToCopy"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Clean/resources/add.png</normaloff>:/Themes/Clean/resources/add.png</iconset> + </property> + <property name="text"> + <string>Copy folder</string> + </property> + </action> + </widget> + <resources> + <include location="resources.qrc"/> + </resources> + <connections/> +</ui> diff --git a/plugins-unmaintained/Themes/Clean/plugin.json b/plugins-unmaintained/Themes/Clean/plugin.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/plugin.json @@ -0,0 +1 @@ +{}
\ No newline at end of file diff --git a/plugins-unmaintained/Themes/Clean/resources.qrc b/plugins-unmaintained/Themes/Clean/resources.qrc new file mode 100644 index 0000000..40533c4 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources.qrc @@ -0,0 +1,5 @@ +<RCC> + <qresource prefix="/Themes/Clean"> + <file>resources/SystemTrayIcon/informations.png</file> + </qresource> +</RCC> diff --git a/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/informations.png b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/informations.png Binary files differnew file mode 100644 index 0000000..5b7b255 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/informations.png diff --git a/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Caught_Unix.png b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Caught_Unix.png Binary files differnew file mode 100644 index 0000000..6f5d1cf --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Caught_Unix.png diff --git a/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Caught_Windows.png b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Caught_Windows.png Binary files differnew file mode 100644 index 0000000..5464856 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Caught_Windows.png diff --git a/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png Binary files differnew file mode 100644 index 0000000..3961215 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png diff --git a/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png Binary files differnew file mode 100644 index 0000000..45d6315 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png diff --git a/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Uncaught_Unix.png b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Uncaught_Unix.png Binary files differnew file mode 100644 index 0000000..ac4299a --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Uncaught_Unix.png diff --git a/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Uncaught_Windows.png b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Uncaught_Windows.png Binary files differnew file mode 100644 index 0000000..6e6bae7 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources/SystemTrayIcon/systray_Uncaught_Windows.png diff --git a/plugins-unmaintained/Themes/Clean/resources_unix.qrc b/plugins-unmaintained/Themes/Clean/resources_unix.qrc new file mode 100644 index 0000000..847cc1c --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources_unix.qrc @@ -0,0 +1,7 @@ +<RCC> + <qresource prefix="/Themes/Clean"> + <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/Clean/resources_windows.qrc b/plugins-unmaintained/Themes/Clean/resources_windows.qrc new file mode 100644 index 0000000..7d8bbe1 --- /dev/null +++ b/plugins-unmaintained/Themes/Clean/resources_windows.qrc @@ -0,0 +1,7 @@ +<RCC> + <qresource prefix="/Themes/Clean"> + <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> 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> diff --git a/plugins-unmaintained/Themes/Windows/DebugEngineMacro.h b/plugins-unmaintained/Themes/Windows/DebugEngineMacro.h new file mode 100644 index 0000000..4582010 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/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/Windows/Environment.h b/plugins-unmaintained/Themes/Windows/Environment.h new file mode 100644 index 0000000..265a5a6 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/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/Windows/Languages/ar/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/ar/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/ar/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/de/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/de/translation.ts new file mode 100644 index 0000000..643e958 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/de/translation.ts @@ -0,0 +1,124 @@ +<?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="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation>Verbleibende Zeit unbekannt</translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation> + <numerusform>Übertrage %n Element (%2)</numerusform> + <numerusform>Übertrage %n Elemente (%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation> + <numerusform>Kopiere %n Element (%2)</numerusform> + <numerusform>Kopiere %n Elemente (%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation> + <numerusform>Verschiebe %n Element (%2)</numerusform> + <numerusform>Verschiebe %n Elemente (%2)</numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation>von <b>%1</b> (%2) bis <b>%3</b> (%4)<br />%5</translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation>Warten...</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation>Name:</translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation>Von:</translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation>Nach:</translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation>verbleibende Zeit:</translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation>verbleibende Elemente:</translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation>Geschwindigkeit:</translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation>Mehr Informationen</translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation>Abbrechen</translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation>Datei hinzufügen</translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation>Ordner hinzufügen</translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation>Datei (en) verschieben</translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation>Ordner verschieben</translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation>Datei (en) kopieren</translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation>Ordner kopieren</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/el/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/el/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/el/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/en/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/en/translation.ts new file mode 100644 index 0000000..958c033 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/en/translation.ts @@ -0,0 +1,124 @@ +<?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="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation> + <numerusform>Transferring %n item (%2)</numerusform> + <numerusform>Transferring %n items (%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation> + <numerusform>Copying %n item (%2)</numerusform> + <numerusform>Copying %n items (%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation> + <numerusform>Moving %n item (%2)</numerusform> + <numerusform>Moving %n items (%2)</numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/es/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/es/translation.ts new file mode 100644 index 0000000..cd6a752 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/es/translation.ts @@ -0,0 +1,124 @@ +<?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="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished">desde <b>%1</b> (%2) hasta <b>%3</b> (%4)<br />%5</translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished">En espera</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation>Nombre:</translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation>Desde:</translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation>Hasta:</translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation>Tiempo restante:</translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation>Items restantes:</translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation>Velocidad:</translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation>Más información</translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation>Cancelar</translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation>Añadir archivo</translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation>Añadir carpeta</translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation>Mover archivo(s)</translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation>Mueva la carpeta</translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation>Copia el archivo(s)</translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation>Copia la carpeta</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/fr/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/fr/translation.ts new file mode 100644 index 0000000..d5f8b63 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/fr/translation.ts @@ -0,0 +1,124 @@ +<?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="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation>Temps restant inconnu</translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation> + <numerusform>Transfert de %n élément (%2)</numerusform> + <numerusform>Transfert de %n éléments (%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation> + <numerusform>Copie de %n élément (%2)</numerusform> + <numerusform>Copie de %n éléments (%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation> + <numerusform>Déplacement de %n élément (%2)</numerusform> + <numerusform>Déplacement de %n éléments (%2)</numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation>depuis <b>%1</b> (%2) vers <b>%3</b> (%4)<br />%5</translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation>En attente</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation>Déplacer des fichiers</translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation>Déplacer un dossier</translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation>Copier des fichiers</translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation>Copier un dossier</translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation>Ajouter un dossier</translation> + </message> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation>Nom:</translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation>Depuis:</translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation>Vers:</translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation>Temps restant:</translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation>Éléments restants:</translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation>Vitesse:</translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation>Plus d'information</translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation>Annuler</translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation>Ajout de fichier</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/hi/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/hi/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/hi/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/hu/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/hu/translation.ts new file mode 100644 index 0000000..3a5eda8 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/hu/translation.ts @@ -0,0 +1,121 @@ +<?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="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation>Ismeretlen hátralévő idő</translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation> + <numerusform>%n elem áthelyezése(%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation> + <numerusform>%n elem átmásolása(%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation> + <numerusform>%n elem mozgatása(%2)</numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation><b>%1</b> (%2) helyről-> <b>%3</b> (%4) helyre<br />%5</translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation>Várakozik</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation>Név:</translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation>Forrás:</translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation>Cél:</translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation>Hátralévő idő:</translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation>Hátralévő elemek:</translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation>Sebesség:</translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation>Több információ</translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation>Mégse</translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation>Fájl hozzáadása</translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation>Mappa hozzáadása</translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation>Fájl(ok) mozgatása</translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation>Mappa mozgatása</translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation>Fájl(ok) másolása</translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation>Mappa másolása</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/id/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/id/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/id/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/it/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/it/translation.ts new file mode 100644 index 0000000..f89b6a0 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/it/translation.ts @@ -0,0 +1,125 @@ +<?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="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation>Tempo rediduo indeterminato</translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation> + <numerusform>Trasferimento di %n elemento (%2)</numerusform> + <numerusform>Trasferimento di %n elementi (%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation> + <numerusform>Copia di %n elemento (%2)</numerusform> + <numerusform>Copia di %n elementi (%2)</numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation> + <numerusform>Spostamento di %n elemento (%2)</numerusform> + <numerusform>Spostamento di %n elementi (%2)</numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translatorcomment>Per esempio: da <b>Cartella di origine</b> (e: precedente origine) to <b>Cartella di destinazione</b> (d: destinazione desktop)<br />Circa 5 ore rimanenti</translatorcomment> + <translation>da <b>%1</b> (%2) a <b>%3</b> (%4)<br />%5</translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation>In attesa</translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation>Nome:</translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation>Da:</translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation>A:</translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation>Tempo residuo:</translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation>Elementi rimanenti:</translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation>Velocità:</translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation>Maggiori informazioni</translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation>Annulla</translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation>Aggiungi file</translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation>Aggiungi cartella</translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation>Sposta file</translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation>Sposta la cartella</translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation>Copia file</translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation>Copia la cartella</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/ja/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/ja/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/ja/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/ko/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/ko/translation.ts new file mode 100644 index 0000000..a3724ff --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/ko/translation.ts @@ -0,0 +1,121 @@ +<?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="+204"/> + <location line="+188"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location line="-55"/> + <location line="+2"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location line="+7"/> + <location line="+2"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location line="+5"/> + <location line="+2"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location line="+48"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+9"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="+176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+10"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+10"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+10"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+10"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+10"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+65"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+40"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+14"/> + <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/Windows/Languages/nl/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/nl/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/nl/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/no/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/no/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/no/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/pl/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/pl/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/pl/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/ru/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/ru/translation.ts new file mode 100644 index 0000000..f06ef15 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/ru/translation.ts @@ -0,0 +1,127 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="ru" sourcelanguage="en"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + <numerusform></numerusform> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation>Добавить файл</translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation>Добавить папку</translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation>Перемещение файла (ов)</translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation>Перемещение папки</translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation>Копировать файл (ы)</translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation>Копировать папку</translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/th/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/th/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/th/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/tr/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/tr/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/tr/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/Languages/zh/translation.ts b/plugins-unmaintained/Themes/Windows/Languages/zh/translation.ts new file mode 100644 index 0000000..cd528af --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/Languages/zh/translation.ts @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1"> +<context> + <name>Themes</name> + <message> + <location filename="../../interface.cpp" line="204"/> + <location filename="../../interface.cpp" line="392"/> + <source>Unknown remaining time</source> + <translation type="unfinished"></translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="337"/> + <location filename="../../interface.cpp" line="339"/> + <source>Transferring %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="346"/> + <location filename="../../interface.cpp" line="348"/> + <source>Copying %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message numerus="yes"> + <location filename="../../interface.cpp" line="353"/> + <location filename="../../interface.cpp" line="355"/> + <source>Moving %n item(s) (%2)</source> + <translation type="unfinished"> + <numerusform></numerusform> + </translation> + </message> + <message> + <location filename="../../interface.cpp" line="403"/> + <source>from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5</source> + <extracomment>Sample: from <b>sources</b> (e:<byte value="xc"/>oldersource) to <b>destination</b> (d:desktopdestination)<br />About 5 Hours remaining</extracomment> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.cpp" line="412"/> + <source>In waiting</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>interface</name> + <message> + <location filename="../../interface.ui" line="176"/> + <source>Name:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="186"/> + <source>From:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="196"/> + <source>To:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="206"/> + <source>Time remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="216"/> + <source>Items remaining:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="226"/> + <source>Speed:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="291"/> + <source>More information</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="331"/> + <source>Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="345"/> + <source>Add file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="354"/> + <source>Add folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="363"/> + <source>Move file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="372"/> + <source>Move folder</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="381"/> + <source>Copy file(s)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../../interface.ui" line="390"/> + <source>Copy folder</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> diff --git a/plugins-unmaintained/Themes/Windows/StructEnumDefinition.h b/plugins-unmaintained/Themes/Windows/StructEnumDefinition.h new file mode 100644 index 0000000..c1758f4 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/StructEnumDefinition.h @@ -0,0 +1 @@ +#include "../../../StructEnumDefinition.h" diff --git a/plugins-unmaintained/Themes/Windows/TransferModel.cpp b/plugins-unmaintained/Themes/Windows/TransferModel.cpp new file mode 100644 index 0000000..7743266 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/TransferModel.cpp @@ -0,0 +1,286 @@ +#include "TransferModel.h" + +#define COLUMN_COUNT 3 + +// Model + +TransferModel::TransferModel() +{ + iconStart=QIcon(":/Themes/Windows/resources/player_play.png"); + iconPause=QIcon(":/Themes/Windows/resources/player_pause.png"); + iconStop=QIcon(":/Themes/Windows/resources/checkbox.png"); + currentIndexSearch=0; + currentFile = 0; + totalFile = 0; + currentSize = 0; + totalSize = 0; + haveSearchItem=false; +} + +int TransferModel::columnCount( const QModelIndex& parent ) const +{ + return parent == QModelIndex() ? COLUMN_COUNT : 0; +} + +QVariant TransferModel::data( const QModelIndex& index, int role ) const +{ + Q_UNUSED(role); + Q_UNUSED(index); + return QVariant(); +} + +int TransferModel::rowCount( const QModelIndex& parent ) const +{ + Q_UNUSED(parent); + 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 ) +{ + Q_UNUSED(index); + Q_UNUSED(value); + Q_UNUSED(role); + return true; +} + +/* + 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; + emit layoutAboutToBeChanged(); + while(index_for_loop<loop_size) + { + const Ultracopier::ReturnActionOnCopyList& action=returnActions.at(index_for_loop); + switch(action.type) + { + case Ultracopier::AddingItem: + { + this->totalFile++; + this->totalSize+=action.addAction.size; + } + break; + case Ultracopier::RemoveItem: + internalRunningOperation.remove(action.addAction.id); + startId.remove(action.addAction.id); + stopId.remove(action.addAction.id); + this->currentFile++; + break; + case Ultracopier::PreOperation: + { + ItemOfCopyListWithMoreInformations tempItem; + tempItem.currentProgression=0; + tempItem.generalData=action.addAction; + tempItem.generalData.destinationFullPath.remove(tempItem.generalData.destinationFullPath.size()-tempItem.generalData.destinationFileName.size(),tempItem.generalData.destinationFileName.size()); + tempItem.generalData.sourceFullPath.remove(tempItem.generalData.sourceFullPath.size()-tempItem.generalData.sourceFileName.size(),tempItem.generalData.sourceFileName.size()); + 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.currentProgression=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; +} + +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].currentProgression=(progressionList.at(index_for_loop).currentRead+progressionList.at(index_for_loop).currentWrite)/2; + #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.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; + returnItem.size=facilityEngine->sizeToString(itemTransfer.generalData.size); + switch(itemTransfer.actionType) + { + case Ultracopier::CustomOperation: + if(!itemTransfer.custom_with_progression) + returnItem.progressBar_file=-1; + else + { + if(itemTransfer.generalData.size>0) + returnItem.progressBar_file=((double)itemTransfer.currentProgression/itemTransfer.generalData.size)*65535; + else + returnItem.progressBar_file=-1; + } + 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; + //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_file=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_file=0; + break; + default: + returnItem.progressBar_file=0; + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("unknow action type for file %1: actionType: %2").arg(itemTransfer.generalData.id).arg(itemTransfer.actionType)); + break; + } + } + else + { + if(!internalRunningOperation.contains(*stopId.constBegin())) + { + returnItem.haveItem=false; + return returnItem; + } + else + returnItem.haveItem=true; + const ItemOfCopyListWithMoreInformations &itemTransfer=internalRunningOperation[*stopId.constBegin()]; + returnItem.from=itemTransfer.generalData.sourceFullPath; + returnItem.to=itemTransfer.generalData.destinationFullPath; + returnItem.current_file=itemTransfer.generalData.destinationFileName; + returnItem.size=facilityEngine->sizeToString(itemTransfer.generalData.size); + switch(itemTransfer.actionType) + { + case Ultracopier::CustomOperation: + if(!itemTransfer.custom_with_progression) + returnItem.progressBar_file=-1; + else + { + if(itemTransfer.generalData.size>0) + returnItem.progressBar_file=((double)itemTransfer.currentProgression/itemTransfer.generalData.size)*65535; + else + returnItem.progressBar_file=-1; + } + 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; + //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_file=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_file=0; + break; + default: + returnItem.progressBar_file=65535; + ULTRACOPIER_DEBUGCONSOLE(Ultracopier::DebugLevel_Warning,QStringLiteral("unknow action type for file %1: actionType: %2").arg(itemTransfer.generalData.id).arg(itemTransfer.actionType)); + break; + } + } + return returnItem; +} diff --git a/plugins-unmaintained/Themes/Windows/TransferModel.h b/plugins-unmaintained/Themes/Windows/TransferModel.h new file mode 100644 index 0000000..c2d89aa --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/TransferModel.h @@ -0,0 +1,90 @@ +#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 currentProgression; + 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; + QString size; + int progressBar_file; + }; + + 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); + + void setFileProgression(QList<Ultracopier::ProgressionItem> &progressionList); + + currentTransfertItem getCurrentTransfertItem(); + + quint64 currentFile; + quint64 totalFile; + quint64 currentSize; + quint64 totalSize; +protected: + 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; + 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/Windows/Variable.h b/plugins-unmaintained/Themes/Windows/Variable.h new file mode 100644 index 0000000..963d0c8 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/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/Windows/documentation.dox b/plugins-unmaintained/Themes/Windows/documentation.dox new file mode 100644 index 0000000..6a5ad0e --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/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 Windows + + \section mainpage_overview Overview + + It's interface to have interface like windows for 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. + +*/ diff --git a/plugins-unmaintained/Themes/Windows/factory.cpp b/plugins-unmaintained/Themes/Windows/factory.cpp new file mode 100644 index 0000000..dbce51a --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/factory.cpp @@ -0,0 +1,74 @@ +/** \file factory.cpp +\brief Define the factory core +\author alpha_one_x86 +*/ + +#include "factory.h" + +QRegularExpression ThemesFactory::slashEnd; +QRegularExpression ThemesFactory::isolateName; + +ThemesFactory::ThemesFactory() +{ + slashEnd=QRegularExpression("/$"); + isolateName=QRegularExpression("^.*/([^/]+)$"); +} + +PluginInterface_Themes * ThemesFactory::getInstance() +{ + Themes * newInterface=new Themes(facilityEngine); + connect(this,&ThemesFactory::reloadLanguage,newInterface,&Themes::newLanguageLoaded); + return newInterface; +} + +void ThemesFactory::setResources(OptionInterface * options,const QString &writePath,const QString &pluginPath,FacilityInterface * facilityEngine,const bool &portableVersion) +{ + Q_UNUSED(options) + Q_UNUSED(writePath) + Q_UNUSED(pluginPath) + this->facilityEngine=facilityEngine; + Q_UNUSED(portableVersion) +} + +QWidget * ThemesFactory::options() +{ + return NULL; +} + +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/Windows/resources/"+fileName); +} + +void ThemesFactory::resetOptions() +{ +} + +void ThemesFactory::newLanguageLoaded() +{ + emit reloadLanguage(); +} diff --git a/plugins-unmaintained/Themes/Windows/factory.h b/plugins-unmaintained/Themes/Windows/factory.h new file mode 100644 index 0000000..32ea9f1 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/factory.h @@ -0,0 +1,45 @@ +/** \file factory.h +\brief Define the factory, to create instance of the interface +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef FACTORY_H +#define FACTORY_H + +#include <QObject> +#include <QWidget> +#include <QIcon> +#include <QRegularExpression> + +#include "interface.h" +#include "../../../interface/PluginInterface_Themes.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: + ThemesFactory(); + /// \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 * optionsEngine,const QString &writePath,const QString &pluginPath,FacilityInterface * facilityEngine,const bool &portableVersion); + /// \brief to get the default options widget + QWidget * options(); + /// \brief to get a resource icon + QIcon getIcon(const QString &fileName) const; + //regex + static QRegularExpression slashEnd; + static QRegularExpression isolateName; + signals: + void reloadLanguage(); + public slots: + void resetOptions(); + void newLanguageLoaded(); + private: + FacilityInterface * facilityEngine; +}; + +#endif // FACTORY_H diff --git a/plugins-unmaintained/Themes/Windows/informations.xml b/plugins-unmaintained/Themes/Windows/informations.xml new file mode 100644 index 0000000..988d01c --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/informations.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<package> + <title xml:lang="en"><![CDATA[Windows dialog for Ultracopier]]></title><!-- english is required --> + <title xml:lang="fr"><![CDATA[Dialogue de Windows 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 RFC822 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[Windows dialog for Ultracopier, to have same copy dialog than windows vista/7/8]]></description> + <description xml:lang="fr"><![CDATA[Dialogue de Windows pour Ultracopier, pour avoir une boite de dialogue pour la copie comme windows vista/7/8]]></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>Windows</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/Windows/interface.cpp b/plugins-unmaintained/Themes/Windows/interface.cpp new file mode 100644 index 0000000..e358f9c --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/interface.cpp @@ -0,0 +1,414 @@ +/** \file interface.cpp +\brief Define the interface core +\author alpha_one_x86 +*/ + +#include "interface.h" +#include "factory.h" +#include "ui_interface.h" + +Themes::Themes(FacilityInterface * facilityEngine) : + ui(new Ui::interface()) +{ + ui->setupUi(this); + remainingSeconds= 0; + speed = 0; + progression_current=0; + progression_total=0; + modeIsForced = false; + haveStarted = false; + this->facilityEngine = facilityEngine; + transferModel.setFacilityEngine(facilityEngine); + menu=new QMenu(this); + ui->toolButton->setMenu(menu); + updateModeAndType(); + + 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); + + updateDetails(); + + #ifdef ULTRACOPIER_PLUGIN_DEBUG + connect(&transferModel,&TransferModel::debugInformation,this,&Themes::debugInformation); + #endif + #ifndef Q_OS_WIN32 + ui->widget_bottom->setStyleSheet("background-color: rgb(237, 237, 237);"); + #endif + show(); +} + +Themes::~Themes() +{ + delete menu; +} + +void Themes::forcedModeAddFile() +{ + emit userAddFile(mode); +} + +void Themes::forcedModeAddFolder() +{ + emit userAddFolder(mode); +} + +void Themes::forcedModeAddFileToCopy() +{ + emit userAddFile(Ultracopier::Copy); +} + +void Themes::forcedModeAddFolderToCopy() +{ + emit userAddFolder(Ultracopier::Copy); +} + +void Themes::forcedModeAddFileToMove() +{ + emit userAddFile(Ultracopier::Move); +} + +void Themes::forcedModeAddFolderToMove() +{ + emit userAddFolder(Ultracopier::Move); +} + +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::closeEvent(QCloseEvent *event) +{ + event->ignore(); + this->hide(); + emit cancel(); +} + +void Themes::detectedSpeed(const quint64 &speed) +{ + this->speed=speed; + if(ui->more->isChecked()) + ui->label_speed->setText(facilityEngine->speedToString(speed)); +} + +void Themes::setSupportSpeedLimitation(const bool &supportSpeedLimitationBool) +{ + Q_UNUSED(supportSpeedLimitationBool); +} + +QWidget * Themes::getOptionsEngineWidget() +{ + return NULL; +} + +void Themes::getOptionsEngineEnabled(const bool &isEnabled) +{ + Q_UNUSED(isEnabled) +} + +void Themes::setCopyType(const Ultracopier::CopyType &type) +{ + this->type=type; + updateModeAndType(); +} + +void Themes::forceCopyMode(const Ultracopier::CopyMode &mode) +{ + modeIsForced=true; + this->mode=mode; + updateModeAndType(); + updateInformations(); +} + +void Themes::updateTitle() +{ + remainingTime(remainingSeconds); +} + +void Themes::actionInProgess(const Ultracopier::EngineActionInProgress &action) +{ + this->action=action; + switch(action) + { + case Ultracopier::Copying: + case Ultracopier::CopyingAndListing: + ui->progressBar->setMaximum(65535); + ui->progressBar->setMinimum(0); + break; + case Ultracopier::Listing: + ui->progressBar->setMaximum(0); + ui->progressBar->setMinimum(0); + break; + case Ultracopier::Idle: + if(haveStarted) + emit cancel(); + break; + default: + break; + } + switch(action) + { + case Ultracopier::Copying: + case Ultracopier::CopyingAndListing: + haveStarted=true; + break; + default: + break; + } +} + +void Themes::newTransferStart(const Ultracopier::ItemOfCopyList &item) +{ + ui->text->setText(item.sourceFullPath); +} + +void Themes::newTransferStop(const quint64 &id) +{ + Q_UNUSED(id) +} + +void Themes::newFolderListing(const QString &path) +{ + if(action==Ultracopier::Listing) + ui->text->setText(path); +} + +void Themes::remainingTime(const int &remainingSeconds) +{ + this->remainingSeconds=remainingSeconds; + + QString remainingTime; + if(remainingSeconds>=0) + remainingTime=facilityEngine->simplifiedRemainingTime(remainingSeconds); + else + remainingTime=facilityEngine->translateText(tr("Unknown remaining time")); + + this->setWindowTitle(remainingTime); + + if(ui->more->isChecked()) + ui->label_remaining_time->setText(remainingTime); + else + updateInformations(); +} + +void Themes::newCollisionAction(const QString &action) +{ + Q_UNUSED(action) +} + +void Themes::newErrorAction(const QString &action) +{ + 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); +} + +void Themes::setTransferListOperation(const Ultracopier::TransferListOperation &transferListOperation) +{ + Q_UNUSED(transferListOperation) +} + +//speed limitation +bool Themes::setSpeedLimitation(const qint64 &speedLimitation) +{ + Q_UNUSED(speedLimitation) + return false; +} + +//get information about the copy +void Themes::setGeneralProgression(const quint64 ¤t,const quint64 &total) +{ + progression_current=current; + progression_total=total; + ui->progressBar->setValue(((double)current/total)*65535); +} + +void Themes::setCollisionAction(const QList<QPair<QString,QString> > &list) +{ + Q_UNUSED(list) +} + +void Themes::setErrorAction(const QList<QPair<QString,QString> > &list) +{ + Q_UNUSED(list) +} + +//edit the transfer list +void Themes::getActionOnList(const QList<Ultracopier::ReturnActionOnCopyList> &returnActions) +{ + transferModel.synchronizeItems(returnActions); + updateInformations(); +} + +void Themes::haveExternalOrder() +{ + ui->toolButton->hide(); +} + +void Themes::isInPause(const bool &isInPause) +{ + //resume in auto the pause + if(isInPause) + emit resume(); +} + +void Themes::newLanguageLoaded() +{ + ui->retranslateUi(this); + updateTitle(); + updateInformations(); +} + +void Themes::setFileProgression(const QList<Ultracopier::ProgressionItem> &progressionList) +{ + QList<Ultracopier::ProgressionItem> progressionListBis=progressionList; + transferModel.setFileProgression(progressionListBis); + updateInformations(); +} + +void Themes::on_more_toggled(bool checked) +{ + Q_UNUSED(checked); + updateDetails(); + updateInformations(); +} + +void Themes::updateDetails() +{ + ui->text->setHidden(ui->more->isChecked()); + ui->details->setHidden(!ui->more->isChecked()); + if(ui->more->isChecked()) + { + this->setMinimumHeight(242); + this->setMaximumHeight(242); + ui->more->setIcon(QIcon(":/Themes/Windows/resources/arrow-up.png")); + } + else + { + this->setMinimumHeight(168); + this->setMaximumHeight(168); + ui->more->setIcon(QIcon(":/Themes/Windows/resources/arrow-down.png")); + } + + // usefull under windows + this->updateGeometry(); + this->update(); + this->adjustSize(); + + updateInformations(); +} + +void Themes::updateInformations() +{ + TransferModel::currentTransfertItem transfertItem=transferModel.getCurrentTransfertItem(); + if(!modeIsForced) + { + if(transferModel.totalFile>1) + ui->label_main->setText(tr("Transferring %n item(s) (%2)","",transferModel.totalFile).arg(facilityEngine->sizeToString(progression_total))); + else + ui->label_main->setText(tr("Transferring %n item(s) (%2)","",transferModel.totalFile).arg(facilityEngine->sizeToString(progression_total))); + } + else + { + if(mode==Ultracopier::Copy) + { + if(transferModel.totalFile>1) + ui->label_main->setText(tr("Copying %n item(s) (%2)","",transferModel.totalFile).arg(facilityEngine->sizeToString(progression_total))); + else + ui->label_main->setText(tr("Copying %n item(s) (%2)","",transferModel.totalFile).arg(facilityEngine->sizeToString(progression_total))); + } + else + { + if(transferModel.totalFile>1) + ui->label_main->setText(tr("Moving %n item(s) (%2)","",transferModel.totalFile).arg(facilityEngine->sizeToString(progression_total))); + else + ui->label_main->setText(tr("Moving %n item(s) (%2)","",transferModel.totalFile).arg(facilityEngine->sizeToString(progression_total))); + } + } + + if(ui->more->isChecked()) + { + if(transfertItem.haveItem) + { + QString simplifiedFrom=transfertItem.from; + QString simplifiedTo=transfertItem.to; + simplifiedFrom.remove(ThemesFactory::slashEnd); + simplifiedTo.remove(ThemesFactory::slashEnd); + simplifiedFrom.replace('\\','/'); + simplifiedTo.replace('\\','/'); + simplifiedFrom.replace(ThemesFactory::isolateName, "\\1"); + simplifiedTo.replace(ThemesFactory::isolateName, "\\1"); + ui->label_file->setText(transfertItem.current_file); + ui->label_from->setText(QStringLiteral("<b>%1</b> (%2)").arg(simplifiedFrom).arg(transfertItem.from)); + ui->label_to->setText(QStringLiteral("<b>%1</b> (%2)").arg(simplifiedTo).arg(transfertItem.to)); + ui->label_items->setText(QStringLiteral("%1 (%2)").arg(transferModel.totalFile-transferModel.currentFile).arg(facilityEngine->sizeToString(progression_total-progression_current))); + } + else + { + ui->label_file->setText(""); + ui->label_from->setText(""); + ui->label_to->setText(""); + ui->label_items->setText(QStringLiteral("%1 (%2)").arg(transferModel.totalFile-transferModel.currentFile).arg(facilityEngine->sizeToString(progression_total-progression_current))); + } + } + else + { + if(transfertItem.haveItem) + { + QString remainingTime; + if(remainingSeconds>=0) + remainingTime=facilityEngine->simplifiedRemainingTime(remainingSeconds); + else + remainingTime=facilityEngine->translateText(tr("Unknown remaining time")); + QString simplifiedFrom=transfertItem.from; + QString simplifiedTo=transfertItem.to; + simplifiedFrom.remove(ThemesFactory::slashEnd); + simplifiedTo.remove(ThemesFactory::slashEnd); + simplifiedFrom.replace('\\','/'); + simplifiedTo.replace('\\','/'); + simplifiedFrom.replace(ThemesFactory::isolateName, "\\1"); + simplifiedTo.replace(ThemesFactory::isolateName, "\\1"); + ui->text->setText( + //: Sample: from <b>sources</b> (e:\folder\source) to <b>destination</b> (d:\desktop\destination)<br />About 5 Hours remaining + tr("from <b>%1</b> (%2) to <b>%3</b> (%4)<br />%5") + .arg(simplifiedFrom) + .arg(transfertItem.from) + .arg(simplifiedTo) + .arg(transfertItem.to) + .arg(remainingTime) + ); + } + else + ui->text->setText(tr("In waiting")); + } +} diff --git a/plugins-unmaintained/Themes/Windows/interface.h b/plugins-unmaintained/Themes/Windows/interface.h new file mode 100644 index 0000000..5de55e6 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/interface.h @@ -0,0 +1,165 @@ +/** \file interface.h +\brief Define the interface +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef INTERFACE_TEST_H +#define INTERFACE_TEST_H + +#include <QObject> +#include <QWidget> +#include <QMenu> +#include <QCloseEvent> + +#include "../../../interface/PluginInterface_Themes.h" +#include "TransferModel.h" + +namespace Ui { + class interface; +} + +/// \brief Define the interface +class Themes : public PluginInterface_Themes +{ + Q_OBJECT +public slots: + //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); + //set the translate + void newLanguageLoaded(); +public: + /// \brief the transfer item with progression + struct ItemOfCopyListWithMoreInformations + { + quint64 currentProgression; + 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_file; + }; + /// \brief get the widget for the copy engine + QWidget * getOptionsEngineWidget(); + /// \brief to set if the copy engine is found + void getOptionsEngineEnabled(const bool &isEnabled); + /// \brief get action on the transfer list (add/move/remove) + void getActionOnList(const QList<Ultracopier::ReturnActionOnCopyList> &returnActions); + //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 &); +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(CopyMode); + void userAddFile(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: + //constructor and destructor + Themes(FacilityInterface * facilityEngine); + ~Themes(); +private: + Ui::interface *ui; + TransferModel transferModel; + void updateTitle(); + QMenu *menu; + Ultracopier::EngineActionInProgress action; + void closeEvent(QCloseEvent *event); + void updateModeAndType(); + bool modeIsForced; + Ultracopier::CopyType type; + Ultracopier::CopyMode mode; + bool haveStarted; + QList<ItemOfCopyListWithMoreInformations> InternalRunningOperation; + int loop_size,index_for_loop; + int sub_loop_size,sub_index_for_loop; + FacilityInterface * facilityEngine; + void updateDetails(); + void updateInformations(); + int remainingSeconds; + quint64 progression_current; + quint64 progression_total; + quint64 speed; +private slots: + void forcedModeAddFile(); + void forcedModeAddFolder(); + void forcedModeAddFileToCopy(); + void forcedModeAddFolderToCopy(); + void forcedModeAddFileToMove(); + void forcedModeAddFolderToMove(); + void on_more_toggled(bool checked); +}; + +#endif // INTERFACE_TEST_H diff --git a/plugins-unmaintained/Themes/Windows/interface.pro b/plugins-unmaintained/Themes/Windows/interface.pro new file mode 100644 index 0000000..9a82f6a --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/interface.pro @@ -0,0 +1,48 @@ +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 \ + ../../../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 + +FORMS += \ + interface.ui + +RESOURCES += \ + resources.qrc + +win32 { + RESOURCES += resources_windows.qrc +} +!win32 { + RESOURCES += resources_unix.qrc +} diff --git a/plugins-unmaintained/Themes/Windows/interface.ui b/plugins-unmaintained/Themes/Windows/interface.ui new file mode 100644 index 0000000..f255562 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/interface.ui @@ -0,0 +1,415 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>interface</class> + <widget class="QWidget" name="interface"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>420</width> + <height>284</height> + </rect> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Minimum"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>420</width> + <height>0</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>420</width> + <height>16777215</height> + </size> + </property> + <property name="windowTitle"> + <string notr="true">Ultracopier</string> + </property> + <property name="windowIcon"> + <iconset resource="resources.qrc"> + <normaloff>:/Themes/Windows/resources/icon.png</normaloff>:/Themes/Windows/resources/icon.png</iconset> + </property> + <layout class="QVBoxLayout" name="verticalLayout"> + <property name="spacing"> + <number>0</number> + </property> + <property name="margin"> + <number>0</number> + </property> + <item> + <widget class="QWidget" name="widget" native="true"> + <property name="minimumSize"> + <size> + <width>420</width> + <height>42</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>420</width> + <height>42</height> + </size> + </property> + <property name="styleSheet"> + <string notr="true">background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 rgba(230, 240, 255, 255), stop:0.5 rgba(166, 199, 230, 255), stop:1 rgba(3, 40, 84, 255));</string> + </property> + <layout class="QHBoxLayout" name="horizontalLayout_3"> + <property name="leftMargin"> + <number>20</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>20</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + <item> + <widget class="QLabel" name="label_main"> + <property name="styleSheet"> + <string notr="true">background-color: rgba(255, 0, 0, 0); +font: 12pt "Sans Serif";</string> + </property> + <property name="text"> + <string notr="true">Copying 0 item (0KB)</string> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="label_2"> + <property name="minimumSize"> + <size> + <width>51</width> + <height>40</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>51</width> + <height>40</height> + </size> + </property> + <property name="styleSheet"> + <string notr="true">background-color: rgba(255, 0, 0, 0);</string> + </property> + <property name="pixmap"> + <pixmap resource="resources.qrc">:/Themes/Windows/resources/icon-top.png</pixmap> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QWidget" name="widget_2" native="true"> + <property name="minimumSize"> + <size> + <width>420</width> + <height>0</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>420</width> + <height>16777215</height> + </size> + </property> + <property name="styleSheet"> + <string notr="true">background-color: rgb(255, 255, 255);</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <property name="spacing"> + <number>14</number> + </property> + <property name="leftMargin"> + <number>20</number> + </property> + <property name="topMargin"> + <number>14</number> + </property> + <property name="rightMargin"> + <number>20</number> + </property> + <property name="bottomMargin"> + <number>14</number> + </property> + <item> + <widget class="QLabel" name="text"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Minimum"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>28</height> + </size> + </property> + <property name="text"> + <string notr="true">from <b>%1</b> (%2) to <b>%3</b> (%4)<br /> +%5</string> + </property> + </widget> + </item> + <item> + <widget class="QWidget" name="details" native="true"> + <layout class="QFormLayout" name="formLayout"> + <property name="labelAlignment"> + <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set> + </property> + <property name="verticalSpacing"> + <number>2</number> + </property> + <item row="0" column="0"> + <widget class="QLabel" name="label_3"> + <property name="text"> + <string>Name:</string> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QLabel" name="label_file"/> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="label_5"> + <property name="text"> + <string>From:</string> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QLabel" name="label_from"/> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="label_6"> + <property name="text"> + <string>To:</string> + </property> + </widget> + </item> + <item row="2" column="1"> + <widget class="QLabel" name="label_to"/> + </item> + <item row="3" column="0"> + <widget class="QLabel" name="label_7"> + <property name="text"> + <string>Time remaining:</string> + </property> + </widget> + </item> + <item row="3" column="1"> + <widget class="QLabel" name="label_remaining_time"/> + </item> + <item row="4" column="0"> + <widget class="QLabel" name="label_8"> + <property name="text"> + <string>Items remaining:</string> + </property> + </widget> + </item> + <item row="4" column="1"> + <widget class="QLabel" name="label_items"/> + </item> + <item row="5" column="0"> + <widget class="QLabel" name="label_9"> + <property name="text"> + <string>Speed:</string> + </property> + </widget> + </item> + <item row="5" column="1"> + <widget class="QLabel" name="label_speed"/> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QProgressBar" name="progressBar"> + <property name="minimumSize"> + <size> + <width>0</width> + <height>14</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>14</height> + </size> + </property> + <property name="maximum"> + <number>65535</number> + </property> + <property name="textVisible"> + <bool>false</bool> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QWidget" name="widget_bottom" native="true"> + <property name="minimumSize"> + <size> + <width>420</width> + <height>42</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>420</width> + <height>42</height> + </size> + </property> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <property name="leftMargin"> + <number>20</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>20</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + <item> + <widget class="QToolButton" name="more"> + <property name="text"> + <string>More information</string> + </property> + <property name="icon"> + <iconset resource="resources.qrc"> + <normaloff>:/Themes/Windows/resources/arrow-down.png</normaloff>:/Themes/Windows/resources/arrow-down.png</iconset> + </property> + <property name="checkable"> + <bool>true</bool> + </property> + <property name="toolButtonStyle"> + <enum>Qt::ToolButtonTextBesideIcon</enum> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>123</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QToolButton" name="toolButton"> + <property name="text"> + <string notr="true">...</string> + </property> + <property name="popupMode"> + <enum>QToolButton::InstantPopup</enum> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="Cancel"> + <property name="text"> + <string>Cancel</string> + </property> + </widget> + </item> + </layout> + </widget> + </item> + </layout> + <action name="actionAddFile"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Windows/resources/add.png</normaloff>:/Themes/Windows/resources/add.png</iconset> + </property> + <property name="text"> + <string>Add file</string> + </property> + </action> + <action name="actionAddFolder"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Windows/resources/add.png</normaloff>:/Themes/Windows/resources/add.png</iconset> + </property> + <property name="text"> + <string>Add folder</string> + </property> + </action> + <action name="actionAddFileToMove"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Windows/resources/add.png</normaloff>:/Themes/Windows/resources/add.png</iconset> + </property> + <property name="text"> + <string>Move file(s)</string> + </property> + </action> + <action name="actionAddFolderToMove"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Windows/resources/add.png</normaloff>:/Themes/Windows/resources/add.png</iconset> + </property> + <property name="text"> + <string>Move folder</string> + </property> + </action> + <action name="actionAddFileToCopy"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Windows/resources/add.png</normaloff>:/Themes/Windows/resources/add.png</iconset> + </property> + <property name="text"> + <string>Copy file(s)</string> + </property> + </action> + <action name="actionAddFolderToCopy"> + <property name="icon"> + <iconset> + <normaloff>:/Themes/Windows/resources/add.png</normaloff>:/Themes/Windows/resources/add.png</iconset> + </property> + <property name="text"> + <string>Copy folder</string> + </property> + </action> + </widget> + <resources> + <include location="resources.qrc"/> + </resources> + <connections> + <connection> + <sender>Cancel</sender> + <signal>clicked()</signal> + <receiver>interface</receiver> + <slot>close()</slot> + <hints> + <hint type="sourcelabel"> + <x>388</x> + <y>349</y> + </hint> + <hint type="destinationlabel"> + <x>523</x> + <y>498</y> + </hint> + </hints> + </connection> + </connections> +</ui> diff --git a/plugins-unmaintained/Themes/Windows/plugin.json b/plugins-unmaintained/Themes/Windows/plugin.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/plugin.json @@ -0,0 +1 @@ +{}
\ No newline at end of file diff --git a/plugins-unmaintained/Themes/Windows/resources.qrc b/plugins-unmaintained/Themes/Windows/resources.qrc new file mode 100644 index 0000000..f7ffc64 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources.qrc @@ -0,0 +1,10 @@ +<RCC> + <qresource prefix="/Themes/Windows"> + <file>resources/icon.png</file> + <file>resources/arrow-down.png</file> + <file>resources/arrow-up.png</file> + <file>resources/SystemTrayIcon/informations.png</file> + <file>resources/icon-top.png</file> + <file>resources/empty.png</file> + </qresource> +</RCC> diff --git a/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/informations.png b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/informations.png Binary files differnew file mode 100644 index 0000000..5b7b255 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/informations.png diff --git a/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Caught_Unix.png b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Caught_Unix.png Binary files differnew file mode 100644 index 0000000..6f5d1cf --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Caught_Unix.png diff --git a/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Caught_Windows.png b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Caught_Windows.png Binary files differnew file mode 100644 index 0000000..5464856 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Caught_Windows.png diff --git a/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png Binary files differnew file mode 100644 index 0000000..3961215 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Semiuncaught_Unix.png diff --git a/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png Binary files differnew file mode 100644 index 0000000..45d6315 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Semiuncaught_Windows.png diff --git a/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Uncaught_Unix.png b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Uncaught_Unix.png Binary files differnew file mode 100644 index 0000000..ac4299a --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Uncaught_Unix.png diff --git a/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Uncaught_Windows.png b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Uncaught_Windows.png Binary files differnew file mode 100644 index 0000000..6e6bae7 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/SystemTrayIcon/systray_Uncaught_Windows.png diff --git a/plugins-unmaintained/Themes/Windows/resources/arrow-down.png b/plugins-unmaintained/Themes/Windows/resources/arrow-down.png Binary files differnew file mode 100644 index 0000000..39b5c37 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/arrow-down.png diff --git a/plugins-unmaintained/Themes/Windows/resources/arrow-up.png b/plugins-unmaintained/Themes/Windows/resources/arrow-up.png Binary files differnew file mode 100644 index 0000000..5c824fb --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/arrow-up.png diff --git a/plugins-unmaintained/Themes/Windows/resources/empty.png b/plugins-unmaintained/Themes/Windows/resources/empty.png Binary files differnew file mode 100644 index 0000000..846d96d --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/empty.png diff --git a/plugins-unmaintained/Themes/Windows/resources/icon-top.png b/plugins-unmaintained/Themes/Windows/resources/icon-top.png Binary files differnew file mode 100644 index 0000000..64b7992 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/icon-top.png diff --git a/plugins-unmaintained/Themes/Windows/resources/icon-top.xcf b/plugins-unmaintained/Themes/Windows/resources/icon-top.xcf Binary files differnew file mode 100644 index 0000000..9a775e2 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/icon-top.xcf diff --git a/plugins-unmaintained/Themes/Windows/resources/icon.png b/plugins-unmaintained/Themes/Windows/resources/icon.png Binary files differnew file mode 100644 index 0000000..eccfbc5 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources/icon.png diff --git a/plugins-unmaintained/Themes/Windows/resources_unix.qrc b/plugins-unmaintained/Themes/Windows/resources_unix.qrc new file mode 100644 index 0000000..3904f69 --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources_unix.qrc @@ -0,0 +1,7 @@ +<RCC> + <qresource prefix="/Themes/Windows"> + <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/Windows/resources_windows.qrc b/plugins-unmaintained/Themes/Windows/resources_windows.qrc new file mode 100644 index 0000000..28666fc --- /dev/null +++ b/plugins-unmaintained/Themes/Windows/resources_windows.qrc @@ -0,0 +1,7 @@ +<RCC> + <qresource prefix="/Themes/Windows"> + <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> |