commit 216e1a9f71d418441ea7919339d3df50dc296f37 Author: Gary Wang Date: Fri Sep 10 10:02:59 2021 +0800 init commit that compiles Commit the original Caesium 1.7.0 codebase with some adjustment. You can also get the original source at: https://sourceforge.net/projects/caesium/files/1.7.0/ Since the file names listed in the Qt resource file have encoding issue which can cause compile failure, these files get removed. Adjustments: + .gitignore M icons.qrc - *.pro.user(.*) - icons/language/*.png diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a2ce144 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*.user +*.user.* diff --git a/Caesium.pro b/Caesium.pro new file mode 100644 index 0000000..b26e333 --- /dev/null +++ b/Caesium.pro @@ -0,0 +1,68 @@ +#------------------------------------------------- +# +# Project created by QtCreator 2010-12-25T20:14:37 +# +#------------------------------------------------- + +QT += core gui network widgets + +TARGET = Caesium +TEMPLATE = app + + +SOURCES += main.cpp\ + caesium.cpp \ + compressionthread.cpp \ + preferences.cpp \ + qdroptreewidget.cpp \ + about.cpp \ + updater.cpp \ + startupupdater.cpp \ + global.cpp \ + exit.cpp \ + loadpreview.cpp \ + imageresize.cpp + +HEADERS += caesium.h \ + compressionthread.h \ + preferences.h \ + qdroptreewidget.h \ + about.h \ + updater.h \ + startupupdater.h \ + global.h \ + exit.h \ + loadpreview.h \ + imageresize.h + +FORMS += caesium.ui \ + preferences.ui \ + about.ui \ + updater.ui \ + exit.ui + +RESOURCES += \ + icons.qrc + +RC_FILE = caesium.rc + +TRANSLATIONS = caesium_en.ts \ + caesium_it.ts \ + caesium_ja.ts \ + caesium_fr.ts \ + caesium_br.ts \ + caesium_de.ts \ + caesium_tw.ts \ + caesium_sv.ts \ + caesium_cn.ts \ + caesium_pt-br.ts \ + caesium_es.ts \ + caesium_kr.ts \ + caesium_gr.ts \ + caesium_ru.ts + +LIBS += -lQt5Concurrent + + + + diff --git a/about.cpp b/about.cpp new file mode 100644 index 0000000..5c20ccf --- /dev/null +++ b/about.cpp @@ -0,0 +1,60 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include "about.h" +#include "ui_about.h" +#include "global.h" + +AboutDialog::AboutDialog(QWidget *parent) : + QDialog(parent), + ui(new Ui::AboutDialog) +{ + ui->setupUi(this); + + ui->infoTextEdit->setHtml("" + + tr("Name:") + " Caesium
" + + tr("Version:") + " " + version_string + "
" + + tr("Author:") + " Matteo Paonessa
eMail: matteo.paonessa@gmail.com
" + + tr("Website: ") + "http://caesium.sourceforge.net"); + + ui->thanksTextBrowser->setHtml("

" + tr("Translations:") + "

" + + "
  • FR - DODICH
  • JP - Tilt
  • DE - Markus
  • TW - Zkm
  • SV - Ĺke Engelbrektson
  • CN - Rob
  • " + + "
  • ES - Jorge Alvarez Oré
  • PT-BR - Dann Joe
  • GR - geogeo
  • KR - CoCoChipmunk
  • RU - Sergei Leonov
" + + "

Pyexiv2 - http://tilloy.net/dev/pyexiv2/
" + + tr("For Metatag manipulation") + "

Tango Desktop Project - http://tango.freedesktop.org/
" + + "Elementary Icons - http://danrabbit.deviantart.com/art/elementary-Icons-65437279
" + + tr("Base of the icon set")); + + +} + +AboutDialog::~AboutDialog() +{ + delete ui; +} + +void AboutDialog::on_closeButton_clicked() +{ + this->close(); +} diff --git a/about.h b/about.h new file mode 100644 index 0000000..37a655c --- /dev/null +++ b/about.h @@ -0,0 +1,25 @@ +#ifndef ABOUT_H +#define ABOUT_H + +#include + +namespace Ui { + class AboutDialog; +} + +class AboutDialog : public QDialog +{ + Q_OBJECT + +public: + explicit AboutDialog(QWidget *parent = 0); + ~AboutDialog(); + +private: + Ui::AboutDialog *ui; + +private slots: + void on_closeButton_clicked(); +}; + +#endif // ABOUT_H diff --git a/about.ui b/about.ui new file mode 100644 index 0000000..19a7e5c --- /dev/null +++ b/about.ui @@ -0,0 +1,371 @@ + + + AboutDialog + + + Qt::ApplicationModal + + + + 0 + 0 + 377 + 377 + + + + + 377 + 377 + + + + + 377 + 377 + + + + About + + + + :/icons/info.png:/icons/info.png + + + true + + + + + + + + + + + :/icons/splash.png + + + Qt::AlignCenter + + + + + + + + + 0 + + + + Information + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + 0 + + + + + + + + false + + + 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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><br /></p></body></html> + + + Qt::TextBrowserInteraction + + + true + + + + + + + + + + Thanks + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + 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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Pyexiv2</span><span style=" font-size:8pt;"> - http://tilloy.net/dev/pyexiv2/<br />For Metatag manipulation<br /><br /></span><span style=" font-size:8pt; font-weight:600;">Tango Desktop Project </span><span style=" font-size:8pt;">- http://tango.freedesktop.org/<br />Base of the icon set</span></p></body></html> + + + true + + + + + + + + + + License + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + 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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + + + + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Close + + + + + + + + + + + + diff --git a/albumwizard.cpp b/albumwizard.cpp new file mode 100644 index 0000000..5e4ffc0 --- /dev/null +++ b/albumwizard.cpp @@ -0,0 +1,126 @@ +#include "albumwizard.h" + +AlbumWizard::AlbumWizard(QWidget *parent) : + QWizard(parent) +{ + addPage(new IntroPage); + addPage(new SettingsPage); + addPage(new ConclusionPage); + + setPixmap(QWizard::BannerPixmap, QPixmap(":/images/banner.png")); + setPixmap(QWizard::BackgroundPixmap, QPixmap(":/images/background.png")); + + this->setButtonText(QWizard::FinishButton, tr("Finish")); + + setWindowTitle(tr("Import Album")); +} + +IntroPage::IntroPage(QWidget *parent) + : QWizardPage(parent) +{ + setTitle(tr("Introduction")); + setPixmap(QWizard::WatermarkPixmap, QPixmap(":/images/watermark1.png")); + + label = new QLabel(tr("This wizard allows you to import a folder, " + "along with its subfolders, directly into Caesium. " + "You simply need to set an input folder, choose where " + "compress your pictures and Caesium will keep the same " + "(sub)folder structure, name and format. You can set the compression level " + "and compress your pictures right after the wizard end.")); + label->setWordWrap(true); + + QVBoxLayout *layout = new QVBoxLayout; + layout->addWidget(label); + setLayout(layout); +} + +SettingsPage::SettingsPage(QWidget *parent) + : QWizardPage(parent) +{ + setTitle(tr("Settings")); + + label = new QLabel(tr("In this page you can set your pictures folder, " + "where to compress them and the compression level.")); + label->setWordWrap(true); + + inputLineEdit = new QLineEdit(this); + inputLineEdit->setPlaceholderText(tr("Choose your pictures folder...")); + inputLineEdit->setReadOnly(true); + inputButton = new QPushButton(tr("Browse...")); + + outputLineEdit = new QLineEdit(this); + outputLineEdit->setPlaceholderText(tr("Choose where to compress...")); + outputLineEdit->setReadOnly(true); + outputButton = new QPushButton(tr("Browse...")); + + spacer = new QSpacerItem(1, 20); + + compressionLabel = new QLabel(tr("Quality: ")); + compressionSlider = new QSlider(Qt::Horizontal); + compressionSlider->setMaximum(100); + compressionSlider->setMinimum(1); + compressionSlider->setSingleStep(5); + compressionSlider->setValue(80); + compressionSlider->setTickInterval(10); + compressionSlider->setTickPosition(QSlider::TicksBelow); + compressionSpinBox = new QSpinBox(); + compressionSpinBox->setValue(80); + compressionSpinBox->setMaximum(100); + compressionSpinBox->setMinimum(1); + connect(compressionSlider, SIGNAL(valueChanged(int)), compressionSpinBox, SLOT(setValue(int))); + connect(compressionSpinBox, SIGNAL(valueChanged(int)), compressionSlider, SLOT(setValue(int))); + + testSpacer = new QSpacerItem(300, 1, QSizePolicy::Expanding, QSizePolicy::Maximum); + testButton = new QPushButton(tr("Run test")); + + QVBoxLayout *layout = new QVBoxLayout; + layout->addWidget(label); + QHBoxLayout *inputLayout = new QHBoxLayout; + inputLayout->addWidget(inputLineEdit); + inputLayout->addWidget(inputButton); + layout->addLayout(inputLayout); + QHBoxLayout *outputLayout = new QHBoxLayout; + outputLayout->addWidget(outputLineEdit); + outputLayout->addWidget(outputButton); + layout->addLayout(outputLayout); + layout->addSpacerItem(spacer); + QHBoxLayout *compressionLayout = new QHBoxLayout; + compressionLayout->addWidget(compressionLabel); + compressionLayout->addWidget(compressionSlider); + compressionLayout->addWidget(compressionSpinBox); + layout->addLayout(compressionLayout); + QHBoxLayout *testLayout = new QHBoxLayout; + testLayout->addSpacerItem(testSpacer); + testLayout->addWidget(testButton); + layout->addLayout(testLayout); + setLayout(layout); + inputLineEdit->setFocusPolicy(Qt::NoFocus); + outputLineEdit->setFocusPolicy(Qt::NoFocus); +} + +ConclusionPage::ConclusionPage(QWidget *parent) + : QWizardPage(parent) +{ + setTitle(tr("Conclusion")); + setPixmap(QWizard::WatermarkPixmap, QPixmap(":/images/watermark2.png")); + + label = new QLabel; + label->setWordWrap(true); + + compressCheckBox = new QCheckBox(tr("Compress now"), this); + compressCheckBox->setChecked(true); + + QVBoxLayout *layout = new QVBoxLayout; + layout->addWidget(label); + layout->addWidget(compressCheckBox); + setLayout(layout); +} + +void ConclusionPage::initializePage() +{ + QString finishText = wizard()->buttonText(QWizard::FinishButton); + finishText.remove('&'); + label->setText(tr("You can choose to compress now you pictures or click %1 to exit the wizard " + "and go to Caesium main page to set other compression options.") + .arg(finishText)); +} diff --git a/caesium.cpp b/caesium.cpp new file mode 100644 index 0000000..4a5a08d --- /dev/null +++ b/caesium.cpp @@ -0,0 +1,1725 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include "caesium.h" +#include "ui_caesium.h" +#include "preferences.h" +#include "about.h" +#include "startupupdater.h" +#include "global.h" +#include "exit.h" +#include "loadpreview.h" +#include "imageresize.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +QTime t; +int error_count = 0, iteration_count = 0, skipped_count; +int current_index = -1; +double scale_factor = 1.0; +bool preview_on = false; +bool orig_on = true; +bool cancelled = false; +bool deleting = false; +QString list_file, previous_list, parent_folder = "", last_profile = settings.value("Settings/profile").value(); +int item_count, saved_space; +QImage currentImage; +double img_ratio; + +WCHAR *m_qStringToWideChar(const QString &str) +{ + if (str.isNull()) + return 0; + WCHAR *result = new WCHAR[str.length() + 1]; + for (int i = 0; i < str.length(); ++i) + result[i] = str[i].unicode(); + result[str.length()] = 0; + return result; +} + +void m_startProcess(QString argv) +{ + WCHAR* exe = m_qStringToWideChar(argv); + STARTUPINFO si; + PROCESS_INFORMATION pi; + + ZeroMemory( &si, sizeof(si) ); + si.cb = sizeof(si); + ZeroMemory( &pi, sizeof(pi) ); + + if( !CreateProcessW( NULL, + exe, + NULL, + NULL, + FALSE, + CREATE_NO_WINDOW , + NULL, + NULL, + &si, + &pi ) + ) + { + return; + } + + WaitForSingleObject( pi.hProcess, INFINITE ); + + CloseHandle( pi.hProcess ); + CloseHandle( pi.hThread ); +} + +void removeDir(QString path) +{ + QDir dir(path); + if (dir.count() == 0) + { + dir.rmdir(path); + } + else + { + QStringList entries = dir.entryList(); + for (int i = 0; i < entries.count(); i++) + { + dir.remove(entries[i]); + } + dir.rmdir(path); + } +} + +QString loadLastDir() +{ + QFile file("lst"); + if (file.open(QIODevice::ReadOnly)) + { + QTextStream stream(&file); + return stream.readLine(0); + } + else + { + return ""; + } +} + +QString fixedSize(int size, int flag) +{ + double sizeD = (double) size; + if (flag == 1 && sizeD > 1024*1024) + { + return QString::number(sizeD/1024/1024, 'f', 2) + " Mb"; + } + if (sizeD < 1024 && sizeD > -1) + { + return QString::number(sizeD, 'f', 2) + " Bytes"; + } + else + { + return QString::number(sizeD/1024, 'f', 2) + " Kb"; + } +} + +QString getRatio(int origSize, int newSize) +{ + int ratio = newSize * 100 / origSize; + if (ratio <= 100) + { + return QString::number(ratio - 100) + " %"; + } + else + { + return "+" + QString::number(ratio - 100) + " %"; + } +} + +QStringList findFilesRecursively(QString directory_path, QStringList filters) +{ + QStringList result; + QDirIterator directory_walker(directory_path, filters, QDir::Files | QDir::NoSymLinks, QDirIterator::Subdirectories); + directory_path.replace('\\', '/'); + directory_path.append('/'); + QString full_path; + while(directory_walker.hasNext()) + { + directory_walker.next(); + full_path = directory_walker.fileInfo().filePath(); + + result << full_path.replace(directory_path, "", Qt::CaseSensitive); + } + return result; +} + +QString getFormattedResolution(QString source) +{ + return QString::number(QImageReader(QFileInfo(source).absoluteFilePath()).size().width()) + "x" + QString::number(QImageReader(QFileInfo(source).absoluteFilePath()).size().height()); +} + +int percentageToInt(QString percentage) +{ + percentage.chop(1); + return percentage.toInt(); +} + +QList resolutionToInt(QString resolution) +{ + QList list; + list.append(resolution.section('x', 0, 0).toInt()); + list.append(resolution.section('x', 1, 1).toInt()); + return list; +} + +Caesium::Caesium(QWidget *parent) : + QMainWindow(parent), + ui(new Ui::Caesium) +{ + ui->setupUi(this); + + QDir::setCurrent(QFileInfo(QCoreApplication::arguments().at(0)).absolutePath()); + + settings.setIniCodec("UTF-8"); + + QApplication::setStyle(QStyleFactory::create(settings.value("Preferences/style").value())); + QApplication::setPalette(QApplication::style()->standardPalette()); + + ui->scrollArea1->verticalScrollBar()->setSliderDown(false); + ui->scrollArea2->verticalScrollBar()->setSliderDown(false); + + trayIcon = new QSystemTrayIcon(QIcon(":/icons/caesium_icon.png"), this); + trayIconMenu = new QMenu(this); + createTrayIcon(); + + connect(ui->scrollArea1->verticalScrollBar(), SIGNAL(valueChanged(int)), ui->scrollArea2->verticalScrollBar(), SLOT(setValue(int))); + connect(ui->scrollArea2->verticalScrollBar(), SIGNAL(valueChanged(int)), ui->scrollArea1->verticalScrollBar(), SLOT(setValue(int))); + connect(ui->scrollArea1->horizontalScrollBar(), SIGNAL(valueChanged(int)), ui->scrollArea2->horizontalScrollBar(), SLOT(setValue(int))); + connect(ui->scrollArea2->horizontalScrollBar(), SIGNAL(valueChanged(int)), ui->scrollArea1->horizontalScrollBar(), SLOT(setValue(int))); + + connect(ui->listTreeWidget, SIGNAL(countUpdate()), this, SLOT(countUpdate())); + connect(ui->listTreeWidget, SIGNAL(structure(QString)), this, SLOT(dropWidgetStructure(QString))); + connect(ui->listTreeWidget, SIGNAL(preview()), this, SLOT(on_actionPreview_triggered())); + connect(ui->listTreeWidget, SIGNAL(a_clear()), this, SLOT(on_actionClear_List_triggered())); + connect(ui->listTreeWidget, SIGNAL(remove()), this, SLOT(on_actionRemove_Item_triggered())); + connect(ui->listTreeWidget, SIGNAL(removeHDD()), this, SLOT(on_actionRemove_Item_From_List_and_Hard_Disk_triggered())); + connect(ui->listTreeWidget, SIGNAL(add()), this, SLOT(on_actionAdd_Pictures_triggered())); + connect(ui->listTreeWidget, SIGNAL(addFolder()), this, SLOT(on_actionOpen_Folder_triggered())); + + connect(ui->heightSpinBox, SIGNAL(valueChanged(int)), this, SLOT(adjustPercentage(int))); + connect(ui->heightSpinBox, SIGNAL(editingFinished()), this, SLOT(adjustWidth())); + connect(ui->widthSpinBox, SIGNAL(valueChanged(int)), this, SLOT(adjustPercentage(int))); + connect(ui->widthSpinBox, SIGNAL(editingFinished()), this, SLOT(adjustHeight())); + + ui->mainToolBar->setVisible(settings.value("Preferences/showtoolbar").value()); + ui->actionShow_Toolbar->setChecked(settings.value("Preferences/showtoolbar").value()); + + QActionGroup *actionGroup = new QActionGroup(this); + actionGroup->addAction(ui->action24x24); + actionGroup->addAction(ui->action32x32); + Caesium::toolbarIconSize(); + + ui->updateButton->setVisible(false); + + ui->suffixErrorLabel->setVisible(false); + + ui->cantSetButton->setVisible(ui->formatComboBox->currentIndex() != 0 && ui->formatComboBox->currentIndex() != 3); + + QList size; + size << 1 << 170; + + ui->listTreeWidget->setColumnWidth(0, 170); + ui->listTreeWidget->setColumnWidth(1, 70); + ui->listTreeWidget->setColumnWidth(2, 70); + ui->listTreeWidget->setColumnWidth(3, 70); + ui->listTreeWidget->setColumnWidth(4, 65); + ui->listTreeWidget->setColumnWidth(5, 70); + ui->listTreeWidget->setColumnWidth(6, 100); + + ui->splitter->setSizes(size); + + imageLabel1 = new QLabel; + imageLabel2 = new QLabel; + + ui->scrollArea1->setWidget(imageLabel1); + imageLabel1->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored); + imageLabel1->setScaledContents(true); + + ui->scrollArea2->setWidget(imageLabel2); + imageLabel2->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored); + imageLabel2->setScaledContents(true); + ui->scrollArea2->setWindowTitle("TITOLO"); + + QStringList lastDirArray = loadLastDir().split("|"); + if (lastDirArray.at(0) == "1") + { + ui->outputLineEdit->setText(lastDirArray.at(1)); + ui->rememberDirectoryCheckBox->setChecked(true); + } + + if (settings.value("Preferences/loadprofile").value()) + { + Caesium::profileLoadEngine(last_profile); + } + + ui->deleteOriginalPushButton->setVisible(settings.value("Preferences/delete").value()); + + Caesium::checkForUpdateStartup(); + + out_folder = ui->outputLineEdit->text(); + + countUpdate(); + + if (QCoreApplication::arguments().count() > 1) + { + Caesium::profileLoadEngine(QApplication::arguments().at(1)); + } + + if (settings.value("Preferences/restorelayout").value()) + { + Caesium::loadLayout(); + } + Caesium::openList(); + + if (settings.value("Preferences/style").value() == "") + { + settings.setValue("Preferences/style", "WindowsVista"); + settings.setValue("Preferences/style_index", 2); + } + + srand(time(NULL)); + + QDir caesiumTemp(QDir::tempPath() + "/" + "_caesium_"); + if (!caesiumTemp.exists()) + { + caesiumTemp.mkpath(QDir::tempPath() + "/" + "_caesium_"); + } + + if (settings.value("Preferences/loadlastlist").value()) + { + Caesium::openList(QDir::tempPath() + "/_caesium_/tmplst"); + } + +} + +Caesium::~Caesium() +{ + delete ui; +} + +void Caesium::adjustScrollbars(int v, int h, int p) +{ + ui->scrollArea1->verticalScrollBar()->setValue(v + p); + ui->scrollArea1->horizontalScrollBar()->setValue(h + p); +} + +bool Caesium::duplicateCheck(QString name, QString dir) +{ + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + if (name == ui->listTreeWidget->topLevelItem(i)->text(0) && dir == ui->listTreeWidget->topLevelItem(i)->text(7)) + { + return false; + } + } + return true; +} + +QStringList Caesium::loadImages() +{ + QStringList imageList; + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + imageList += ui->listTreeWidget->topLevelItem(i)->text(7); + } + return imageList; +} + +QStringList Caesium::loadQuality() +{ + QStringList qualityList; + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + if (ui->listTreeWidget->topLevelItem(i)->text(4) != "") + { + qualityList += ui->listTreeWidget->topLevelItem(i)->text(4); + } + else + { + qualityList += QString::number(ui->qualitySlider->value()); + } + } + return qualityList; +} + +QList Caesium::loadWidth() +{ + QList w_list; + QList list; + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + if (ui->listTreeWidget->topLevelItem(i)->text(6) != "") + { + list = resolutionToInt(ui->listTreeWidget->topLevelItem(i)->text(6)); + w_list += list.at(0); + } + else + { + w_list += -1; + } + } + return w_list; +} + +QList Caesium::loadHeight() +{ + QList h_list; + QList list; + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + if (ui->listTreeWidget->topLevelItem(i)->text(6) != "") + { + list = resolutionToInt(ui->listTreeWidget->topLevelItem(i)->text(6)); + h_list += list.at(1); + } + else + { + h_list += -1; + } + } + return h_list; +} + +void Caesium::closeEvent(QCloseEvent *event) +{ + if (settings.value("Preferences/restorelayout").value()) + { + settings.setValue("Layout/geometry", saveGeometry()); + settings.setValue("Layout/state", saveState()); + } + if (settings.value("Preferences/promptexit").value()) + { + exit = new Exit(this); + if (exit->exec() == 1) + { + lstSave(); + settings.setValue("Settings/profile", last_profile); + Caesium::saveList(QDir::tempPath() + "\\_caesium_\\tmplst"); + //event->setAccepted(true); + } + else + { + event->setAccepted(false); + } + } + else + { + lstSave(); + settings.setValue("Settings/profile", last_profile); + Caesium::saveList(QDir::tempPath() + "/_caesium_/tmplst"); + //event->setAccepted(true); + } +} + +void Caesium::on_actionAdd_Pictures_triggered() +{ + QStringList filePaths; + QString dir = (settings.value("Settings/dir").value()); + QString path; + + if (dir == "") + { + dir = QStandardPaths::standardLocations(QStandardPaths::PicturesLocation).at(0); + } + + filePaths = QFileDialog::getOpenFileNames( + this, tr("Select file(s)"), dir, tr("Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm)")); + + if (filePaths.size() != 0) + { + ui->progressBar->setMaximum(filePaths.size()); + } + + for (int i = filePaths.size() - 1; i > 0 - 1; i--) + { + QFileInfo *fileInfo = new QFileInfo(filePaths.at(i)); + QStringList infoList; + if (Caesium::duplicateCheck(fileInfo->fileName(), fileInfo->absoluteFilePath())) + { + infoList << fileInfo->fileName() << fixedSize(fileInfo->size(), 0) << "" << "" << "" << getFormattedResolution(fileInfo->absoluteFilePath()) << "" << fileInfo->absoluteFilePath(); + QTreeWidgetItem *item = new QTreeWidgetItem(infoList, 0); + item->setIcon(0, QIcon(":/icons/added.png")); + + ui->listTreeWidget->insertTopLevelItem(0, item); + ui->progressBar->setValue(filePaths.size() - i); + path = fileInfo->path(); + } + } + + if (path != "") + { + settings.setValue("Settings/dir", path); + } + + if (parent_folder == "") + { + parent_folder = path; + } + ui->keepStructureCheckBox->setEnabled(Caesium::checkParentFolder(parent_folder, path)); + + countUpdate(); + ui->progressBar->setValue(0); +} + +void Caesium::on_actionOpen_Folder_triggered() +{ + QString dir = (settings.value("Settings/dir").value()); + + if (dir == "") + { + dir = QStandardPaths::standardLocations(QStandardPaths::PicturesLocation).at(0); + } + QString directory = QFileDialog::getExistingDirectory(this, tr("Open Directory"), + dir, + QFileDialog::ShowDirsOnly + | QFileDialog::DontResolveSymlinks); + + QStringList filters, fileList; + filters << "*.bmp" << "*.jpg" << "*.jpeg" << "*.tif" << "*.png" << "*.ppm" << "*.xbm" << "*.xpm"; + if(settings.value("Preferences/scansubdir").value()) + { + fileList = findFilesRecursively(directory, filters); + } + else + { + QDir qDir(directory); + qDir.setNameFilters(filters); + fileList = qDir.entryList(filters); + } + if (fileList.size() != 0) + { + ui->progressBar->setMaximum(fileList.size()); + } + + for (int i = fileList.size() - 1; i > 0 - 1; i--) + { + QFileInfo *fileInfo = new QFileInfo(directory + "/" + fileList.at(i)); + QStringList infoList; + if (Caesium::duplicateCheck(fileInfo->fileName(), fileInfo->absoluteFilePath())) + { + infoList << fileInfo->fileName() << fixedSize(fileInfo->size(), 0) << "" << "" << "" << getFormattedResolution(fileInfo->absoluteFilePath()) << "" << fileInfo->absoluteFilePath(); + QTreeWidgetItem *item = new QTreeWidgetItem(infoList, 0); + item->setIcon(0, QIcon(":/icons/added.png")); + ui->listTreeWidget->insertTopLevelItem(0, item); + ui->progressBar->setValue(fileList.size() - i); + } + } + + if (directory != "") + { + settings.setValue("Settings/dir", directory); + } + + if (parent_folder == "") + { + parent_folder = directory; + } + ui->keepStructureCheckBox->setEnabled(Caesium::checkParentFolder(parent_folder, directory)); + countUpdate(); + ui->progressBar->setValue(0); +} + +void Caesium::on_actionExit_triggered() +{ + this->close(); +} + +void Caesium::on_actionAbout_triggered() +{ + about = new AboutDialog(this); + about->show(); +} + +void Caesium::on_addButton_clicked() +{ + Caesium::on_actionAdd_Pictures_triggered(); +} + +void Caesium::on_actionRemove_Item_triggered() +{ + deleting = true; + int index = 0; + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + if (ui->listTreeWidget->topLevelItem(i)->isSelected()) + { + ui->listTreeWidget->takeTopLevelItem(i); + i--; + index = i; + } + } + if (ui->listTreeWidget->topLevelItemCount() != 0 && index > 0) + { + ui->listTreeWidget->topLevelItem(index)->setSelected(true); + } + else + { + imageLabel1->setPixmap(QPixmap("")); + imageLabel2->setPixmap(QPixmap("")); + } + countUpdate(); + imageLabel1->adjustSize(); + imageLabel2->adjustSize(); + if (ui->listTreeWidget->topLevelItemCount() == 0) + { + parent_folder = ""; + ui->keepStructureCheckBox->setEnabled(true); + } +} + +void Caesium::on_removeButton_clicked() +{ + Caesium::on_actionRemove_Item_triggered(); +} + +void Caesium::on_actionClear_List_triggered() +{ + ui->listTreeWidget->clear(); + imageLabel1->setPixmap(QPixmap("")); + imageLabel2->setPixmap(QPixmap("")); + countUpdate(); + imageLabel1->adjustSize(); + imageLabel2->adjustSize(); + parent_folder = ""; + ui->keepStructureCheckBox->setEnabled(true); +} + +void Caesium::on_actionWebsite_triggered() +{ + QDesktopServices::openUrl(QUrl("http://caesium.sourceforge.net")); +} + +void Caesium::on_actionOnline_Support_triggered() +{ + QDesktopServices::openUrl(QUrl("http://caesium.sourceforge.net/support.html")); +} + +void Caesium::on_actionDonate_to_Caesium_triggered() +{ + QDesktopServices::openUrl(QUrl("http://sourceforge.net/donate/index.php?group_id=336104")); +} + +void Caesium::on_browseToolButton_clicked() +{ + QString outputPath = QFileDialog::getExistingDirectory(this, tr("Select output directory"), + "/home", + QFileDialog::ShowDirsOnly + | QFileDialog::DontResolveSymlinks); + if (outputPath != "") + { + ui->outputLineEdit->setText(outputPath); + } +} + +void Caesium::on_sameFolderCheckBox_clicked(bool checked) +{ + if (checked && ui->suffixLineEdit->text() == "") + { + ui->suffixLineEdit->setText("_compressed"); + } + same_folder_flag = checked; +} + +void Caesium::on_undoButton_clicked() +{ + ui->suffixLineEdit->setText(""); +} + +void Caesium::on_formatComboBox_currentIndexChanged(int index) +{ + ui->qualityLabel->setEnabled(index == 0 || index == 3); + ui->qualitySlider->setEnabled(index == 0 || index == 3); + ui->qualitySpinBox->setEnabled(index == 0 || index == 3); + ui->sameLevelCheckBox->setEnabled(index == 0 || index == 3); + ui->setQualityButton->setEnabled(index == 0 || index == 3); + ui->cantSetButton->setVisible(index != 0 && index != 3); +} + +void Caesium::on_cantSetButton_clicked() +{ + QMessageBox::information(this, tr("Info"), + tr("PNG and BMP are loseless formats, and\ncan't be compressed like JPG do.\nCaesium will set the quality level automatically\nfor those formats."), QMessageBox::Ok); +} + +void Caesium::on_setQualityButton_clicked() +{ + if (ui->sameLevelCheckBox->isChecked()) + { + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + ui->listTreeWidget->topLevelItem(i)->setText(4, QString::number(ui->qualitySlider->value())); + } + } + else if (ui->listTreeWidget->selectedItems().count() != 0) + { + for (int i = 0; i < ui->listTreeWidget->selectedItems().count(); i++) + { + ui->listTreeWidget->selectedItems().at(i)->setText(4, QString::number(ui->qualitySlider->value())); + } + } +} + +void Caesium::on_actionPreview_triggered() +{ + QtConcurrent::run(this, &Caesium::runPreview); +} + +void Caesium::on_previewButton_clicked() +{ + Caesium::on_actionPreview_triggered(); +} + +void Caesium::on_listTreeWidget_itemSelectionChanged() +{ + preview_on = false; + if (ui->listTreeWidget->selectedItems().count() > 1) + { + return; + } + emit loadThreadStop(); + scale_factor = 1.0; + QMovie *movie = new QMovie(":/icons/loading.gif"); + if (ui->listTreeWidget->selectedItems().count() != 0 && ui->listTreeWidget->selectedItems().count() < 2) + { + imageLabel1->setMovie(movie); + movie->start(); + imageLabel1->setGeometry(0, 0, 32, 32); + QThread *loadThread = new LoadPreview(ui->listTreeWidget->selectedItems().at(0)->text(7), this); + connect(this, SIGNAL(loadThreadStop()), loadThread, SLOT(quit())); + connect(loadThread, SIGNAL(imageLoaded1(QImage)), this, SLOT(setImageToLabel1(QImage))); + connect(loadThread, SIGNAL(imageLoaded2(QImage)), this, SLOT(setImageToLabel2(QImage))); + connect(loadThread, SIGNAL(clearSignal()), imageLabel2, SLOT(clear())); + connect(loadThread, SIGNAL(loadingCompressedPreview()), this, SLOT(loadingCompressedPreview())); + connect(loadThread, SIGNAL(finished()), this, SLOT(adjustPreviewView())); + loadThread->start(); + //preview_on = false; + Caesium::enableButtons(true); + if (ui->autoPreviewCheckBox->isChecked()) + { + Caesium::on_previewButton_clicked(); + } + } + else if (ui->listTreeWidget->selectedItems().count() == 0) + { + Caesium::enableButtons(false); + } +} + +void Caesium::on_actionSave_List_As_triggered() +{ + QString fileName = QFileDialog::getSaveFileName(this, tr("Save as..."), QString::null, tr("Caesium List (*.clf)")); + Caesium::saveList(fileName); + opened_list = fileName; +} + +void Caesium::on_actionOpen_List_triggered() +{ + QString listName = QFileDialog::getOpenFileName(this, tr("Open a list file..."), QString::null, tr("Caesium List (*.clf)")); + Caesium::openList(listName); +} + +void Caesium::on_actionAbout_Qt_triggered() +{ + QMessageBox::aboutQt(this, tr("About Qt")); +} + +void Caesium::on_actionCheck_for_Updates_triggered() +{ + ui->actionCheck_for_Updates->setEnabled(false); + + updater = new Updater(this); + updater->show(); + + ui->actionCheck_for_Updates->setEnabled(true); +} + + +void Caesium::checkForUpdateStartup() +{ + if (!settings.value("Preferences/startupupdt").value()) + { + return; + } + ui->actionCheck_for_Updates->setEnabled(false); + QThread *updtThread = new StartupUpdater(this); + connect(updtThread, SIGNAL(showLabel(bool)), this, SLOT(showVersionLabel(bool))); + updtThread->start(); +} + +void Caesium::showVersionLabel(bool flag) +{ + ui->actionCheck_for_Updates->setEnabled(true); + if (flag) + { + ui->updateButton->setVisible(true); + } + else + { + ui->updateButton->setVisible(false); + } +} + +void Caesium::on_actionShow_Toolbar_toggled(bool t_checked) +{ + ui->mainToolBar->setVisible(t_checked); + settings.setValue("Preferences/showtoolbar", t_checked); +} + +void Caesium::on_updateButton_clicked() +{ + Caesium::on_actionCheck_for_Updates_triggered(); +} + +void Caesium::on_actionCompress_triggered() +{ + cancelled = false; + error_count = 0; + iteration_count = 0; + skipped_count = 0; + t.start(); + QString outputDir = ui->outputLineEdit->text(); + QString format = ui->formatComboBox->currentText().toLower(); + if (ui->formatComboBox->currentIndex() == 3) + { + format = "null"; + } + QString suffix = ui->suffixLineEdit->text(); + bool checked = ui->sameFolderCheckBox->isChecked(); + bool resize = ui->resizeGroupBox->isChecked(); + bool fixed; + bool ratio = ui->keepRatioCheckBox->isChecked(); + bool noEnlarge = ui->noEnlargeCheckBox->isChecked(); + bool structure = ui->keepStructureCheckBox->isChecked(); + + + if (ui->methodComboBox->currentIndex() == 0) + { + fixed = true; + } + else + { + fixed = false; + } + + if ((outputDir != "" || checked == true) || (settings.value("Preferences/defaultpath").value() && outputDir == "")) + { + if (ui->listTreeWidget->topLevelItemCount() != 0) + { + if (outputDir == "") + { + outputDir = settings.value("Settings/path").value(); + } + else if (!QDir(outputDir).exists()) + { + int r = Caesium::outputFolderCreation(); + if (r == 0) + { + if (!QDir().mkdir(outputDir)) + { + QMessageBox::critical(this, tr("Error"), + tr("Failed to create the directory.\nAborting."), + QMessageBox::Ok); + return; + } + } + else + { + return; + } + } + ui->progressBar->setMaximum(ui->listTreeWidget->topLevelItemCount()); + QStringList imageList = loadImages(); + QStringList qualityList = loadQuality(); + QList w_list = loadWidth(); + QList h_list = loadHeight(); + + QThread *compThread = new CompressionThread(imageList, parent_folder, outputDir, format, suffix, qualityList, checked, w_list, h_list, fixed, ratio, noEnlarge, resize, structure, this); + connect(compThread, SIGNAL(updateUI(int, int, QString)), this, SLOT(updateUI(int, int, QString))); + connect(compThread, SIGNAL(processingIcon(int, QString)), this, SLOT(processingIcon(int, QString))); + connect(compThread, SIGNAL(errorMessageBox()), this, SLOT(errorMessageBox())); + connect(compThread, SIGNAL(finished()), this, SLOT(showMessageBox())); + connect(ui->cancelButton, SIGNAL(clicked()), compThread, SLOT(terminate())); + compThread->start(); + + ui->actionCompress->setEnabled(false); + ui->compressButton->setEnabled(false); + ui->cancelButton->setEnabled(true); + } + else + { + QMessageBox::critical(this, tr("Error"), tr("The list is empty! Fill it!"), QMessageBox::Ok); + } + } + else + { + QMessageBox::critical(this, tr("Error"), tr("Set an Output Directory first!"), QMessageBox::Ok); + } +} + +void Caesium::showMessageBox() +{ + this->show(); + ui->cancelButton->setEnabled(false); + ui->actionCompress->setEnabled(true); + ui->compressButton->setEnabled(true); + double time = t.elapsed(); + if(settings.value("Preferences/delete").value() && ui->sameFolderCheckBox->isChecked() && !ui->suffixLineEdit->text().isEmpty()) + { + ui->progressLabel->setText(tr("Deleting original files...")); + ui->progressBar->setMaximum(ui->listTreeWidget->topLevelItemCount()); + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + if(!settings.value("Preferences/dontextension").value()) + { + if (QFile::exists(ui->listTreeWidget->topLevelItem(i)->text(7)) && percentageToInt(ui->listTreeWidget->topLevelItem(i)->text(3)) < 0) + { + QFile::remove(ui->listTreeWidget->topLevelItem(i)->text(7)); + ui->progressBar->setValue(i + 1); + } + } + else if (settings.value("Preferences/dontextension").value() && (QFileInfo(ui->listTreeWidget->topLevelItem(i)->text(7)).suffix().toLower() == ui->formatComboBox->currentText().toLower() || ui->formatComboBox->currentIndex() == 3)) + { + if (QFile::exists(ui->listTreeWidget->topLevelItem(i)->text(7)) && percentageToInt(ui->listTreeWidget->topLevelItem(i)->text(3)) < 0) + { + QFile::remove(ui->listTreeWidget->topLevelItem(i)->text(7)); + ui->progressBar->setValue(i + 1); + } + } + } + } + countUpdate(); + if (!cancelled) + { + QMessageBox::information(this, tr("Compression done!"), tr("Compression finished!\n- ") + + QString::number(ui->listTreeWidget->topLevelItemCount() - skipped_count - error_count) + tr(" compressed\n- ") + + QString::number(skipped_count) + tr(" skipped\n- ") + + QString::number(error_count) + tr(" error(s)\nTime elapsed: ") + + QString::number(time / 1000, 'f', 2) + " s." + + tr("\nSaved space: ") + fixedSize(saved_space, 1), QMessageBox::Ok); + } + saved_space = 0; +} + +void Caesium::updateUI(int i, int newSize, QString ratio) +{ + if (newSize < 0) + { + ui->listTreeWidget->topLevelItem(i - 1)->setIcon(0, QIcon(":/icons/skipped.png")); + skipped_count++; + newSize = 0; + } + else if (newSize == 0) + { + ui->listTreeWidget->topLevelItem(i - 1)->setIcon(0, QIcon(":/icons/error.png")); + error_count++; + } + else + { + ui->listTreeWidget->topLevelItem(i - 1)->setIcon(0, QIcon(":/icons/done.png")); + saved_space += QFileInfo(ui->listTreeWidget->topLevelItem(i - 1)->text(7)).size() - newSize; + } + ui->progressBar->setValue(i); + ui->listTreeWidget->topLevelItem(i - 1)->setText(2, fixedSize(newSize, 0)); + ui->listTreeWidget->topLevelItem(i - 1)->setText(3, ratio); + + QString chopped_ratio = ui->listTreeWidget->topLevelItem(i - 1)->text(3); + chopped_ratio.chop(1); + if (chopped_ratio.toInt() > 0) + { + ui->listTreeWidget->topLevelItem(i - 1)->setTextColor(3, QColor::fromRgb(255, 0, 0, 255)); + } + else + { + ui->listTreeWidget->topLevelItem(i - 1)->setTextColor(3, QColor::fromRgb(0, 0, 0, 255)); + } +} + +void Caesium::processingIcon(int i, QString name) +{ + iteration_count = i; + ui->listTreeWidget->scrollToItem(ui->listTreeWidget->topLevelItem(i - 1), QAbstractItemView::EnsureVisible); + ui->progressLabel->setText("(" + QString::number(i + 1) + "/" + QString::number(ui->listTreeWidget->topLevelItemCount()) + ") " + + tr("Processing: ") + name); + ui->listTreeWidget->topLevelItem(i)->setIcon(0, QIcon(":/icons/processing.png")); +} + +void Caesium::on_cancelButton_clicked() +{ + ui->actionCompress->setEnabled(true); + ui->compressButton->setEnabled(true); + ui->listTreeWidget->topLevelItem(iteration_count)->setIcon(0, QIcon(":/icons/error.png")); + ui->progressBar->setValue(0); + cancelled = true; +} + +void Caesium::on_suffixLineEdit_textChanged(QString text) +{ + QRegExp rx("[\\/|:*<>]"); + if (text.contains(rx)) + { + ui->suffixErrorLabel->setVisible(true); + ui->actionCompress->setEnabled(false); + ui->compressButton->setEnabled(false); + } + else if (!text.contains(rx) && ui->listTreeWidget->topLevelItemCount() != 0) + { + ui->suffixErrorLabel->setVisible(false); + ui->actionCompress->setEnabled(true); + ui->compressButton->setEnabled(true); + + } + else + { + ui->suffixErrorLabel->setVisible(false); + ui->actionCompress->setEnabled(false); + ui->compressButton->setEnabled(false); + } +} + +void Caesium::fitWindow() +{ + ui->zoomInToolButton->setEnabled(false); + ui->zoomOutToolButton->setEnabled(false); + scale_factor = 1.0; + + imageLabel1->resize(ui->scrollArea1->size()); + ui->scrollArea1->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + ui->scrollArea1->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + ui->scrollArea2->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + ui->scrollArea2->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + + double ratio = (double)currentImage.width() / (double)currentImage.height(); + double s_ratio = (double) ui->scrollArea1->width() / (double) ui->scrollArea1->height(); + if ((ratio >= 1.0 && ratio >= s_ratio) || (ratio < 1.0 && ratio >= s_ratio)) + { + imageLabel1->resize(ui->scrollArea1->width(), ui->scrollArea1->width() / ratio); + imageLabel2->resize(ui->scrollArea1->width(), ui->scrollArea1->width() / ratio); + } + else + { + imageLabel1->resize(ui->scrollArea1->height() * ratio, ui->scrollArea1->height()); + imageLabel2->resize(ui->scrollArea1->height() * ratio, ui->scrollArea1->height()); + } + + orig_on = false; +} + +void Caesium::originalSize() +{ + scale_factor = 1.0; + ui->scrollArea1->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); + ui->scrollArea1->setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded); + ui->scrollArea2->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); + ui->scrollArea2->setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded); + ui->zoomInToolButton->setEnabled(true); + ui->zoomOutToolButton->setEnabled(true); + imageLabel1->adjustSize(); + imageLabel2->adjustSize(); + + orig_on = true; + +} + +void Caesium::on_fitToolButton_clicked() +{ + Caesium::fitWindow(); +} + +void Caesium::on_originalToolButton_clicked() +{ + Caesium::originalSize(); +} + +void Caesium::on_actionSettings_triggered() +{ + pf = new Preferences(this); + pf->show(); + connect(pf, SIGNAL(finished(int)), this, SLOT(afterPFUpdate())); +} + +void Caesium::scaleImage(double factor) +{ + scale_factor *= factor; + imageLabel1->resize(scale_factor * imageLabel1->pixmap()->size()); + if (preview_on) + { + //imageLabel2->resize(scale_factor * imageLabel2->pixmap()->size()); + } +} + +void Caesium::on_zoomInToolButton_clicked() +{ + Caesium::scaleImage(1.25); + ui->zoomInToolButton->setEnabled(scale_factor < 2.0); + ui->zoomOutToolButton->setEnabled(scale_factor > 0.2); +} + +void Caesium::on_zoomOutToolButton_clicked() +{ + Caesium::scaleImage(0.8); + ui->zoomInToolButton->setEnabled(scale_factor < 2.0); + ui->zoomOutToolButton->setEnabled(scale_factor > 0.2); +} + +void Caesium::enableButtons(bool flag) +{ + ui->zoomInToolButton->setEnabled(flag); + ui->zoomOutToolButton->setEnabled(flag); + ui->fitToolButton->setEnabled(flag); + ui->originalToolButton->setEnabled(flag); +} + +void Caesium::countUpdate() +{ + ui->progressLabel->setText(tr("Item count: ") + QString::number(ui->listTreeWidget->topLevelItemCount())); + ui->actionClear_List->setEnabled(ui->listTreeWidget->topLevelItemCount() > 0); + ui->actionCompress->setEnabled(ui->listTreeWidget->topLevelItemCount() > 0); + ui->compressButton->setEnabled(ui->listTreeWidget->topLevelItemCount() > 0); + ui->actionPreview->setEnabled(ui->listTreeWidget->topLevelItemCount() > 0); + ui->actionRemove_Item->setEnabled(ui->listTreeWidget->topLevelItemCount() > 0); + ui->actionRemove_Item_From_List_and_Hard_Disk->setEnabled(ui->listTreeWidget->topLevelItemCount() > 0); + ui->removeButton->setEnabled(ui->listTreeWidget->topLevelItemCount() > 0); + ui->previewButton->setEnabled(ui->listTreeWidget->topLevelItemCount() > 0); + ui->actionSave_List->setEnabled((ui->listTreeWidget->topLevelItemCount() != item_count || QString::compare(opened_list, previous_list) != 0) && opened_list != ""); + item_count = ui->listTreeWidget->topLevelItemCount(); + if (opened_list != "" && QFileInfo(opened_list).baseName() != "tmplst") + { + this->setWindowTitle(QFileInfo(opened_list).baseName() + tr(" - Caesium - Image Compressor")); + } + previous_list = opened_list; +} + +void Caesium::afterPFUpdate() +{ + ui->deleteOriginalPushButton->setVisible(settings.value("Preferences/delete").value()); +} + +void Caesium::on_outputLineEdit_textChanged(QString folder) +{ + out_folder = folder; +} + +void Caesium::on_actionRemove_Item_From_List_and_Hard_Disk_triggered() +{ + QMessageBox *msg = new QMessageBox(this); + msg->setIcon(QMessageBox::Warning); + msg->setWindowTitle(tr("Warning")); + msg->setText(tr("This action will delete the selected files PERMANENTLY.\nAre you sure you want to continue?")); + msg->addButton(tr("Yes"), QMessageBox::YesRole); + msg->addButton(tr("No"), QMessageBox::NoRole); + int r = msg->exec(); + if (r == 0) + { + QFile file; + for (int i = 0; i < ui->listTreeWidget->selectedItems().count(); i++) + { + file.setFileName(ui->listTreeWidget->selectedItems().at(i)->text(7)); + file.remove(); + } + Caesium::on_removeButton_clicked(); + } + else + { + return; + } +} + +int Caesium::outputFolderCreation() +{ + QMessageBox *msg = new QMessageBox(this); + msg->setIcon(QMessageBox::Warning); + msg->setWindowTitle(tr("Warning")); + msg->setText(tr("The output folder doesn't exists.\nDo you want to create it?")); + msg->addButton(tr("Yes"), QMessageBox::YesRole); + msg->addButton(tr("Cancel"), QMessageBox::NoRole); + return msg->exec(); +} + +void Caesium::openList() +{ + if (QCoreApplication::arguments().count() <= 1 || QFileInfo(QCoreApplication::arguments().at(1)).suffix() != "clf") + { + return; + } + QString listName = QCoreApplication::arguments().at(1); + QFile list(listName); + if (list.open(QIODevice::ReadOnly)) + { + ui->listTreeWidget->clear(); + QTextStream stream(&list); + QString line = stream.readLine(0); + while (line != QString::null) + { + QStringList splittedLine = line.split("|"); + if (splittedLine.count() != 7) + { + splittedLine.insert(5, ""); + } + QTreeWidgetItem *item = new QTreeWidgetItem(splittedLine, 0); + item->setIcon(0, QIcon(":/icons/added.png")); + ui->listTreeWidget->insertTopLevelItem(0, item); + line = stream.readLine(0); + } + } + Caesium::countUpdate(); + opened_list = listName; +} + +void Caesium::lstSave() +{ + QFile file("lst"); + if (file.open(QIODevice::WriteOnly)) + { + QTextStream stream(&file); + if (ui->rememberDirectoryCheckBox->isChecked()) + { + stream << "1|" << ui->outputLineEdit->text() << endl; + } + else + { + stream << "0|" << ui->outputLineEdit->text() << endl; + } + } + QString tempFolder = QDir::tempPath(); + QDir caesiumTemp(tempFolder + "/" + "_caesium_"); + /*if (caesiumTemp.exists()) + { + removeDir(tempFolder + "/" + "_caesium_"); + }*/ +} + +void Caesium::on_actionSave_List_triggered() +{ + if (opened_list == "") + { + Caesium::on_actionSave_List_As_triggered(); + ui->actionSave_List->setEnabled(false); + return; + } + Caesium::saveList(opened_list); + ui->actionSave_List->setEnabled(false); +} + +void Caesium::toolbarIconSize() +{ + QString size = settings.value("Settings/iconsize").value(); + ui->mainToolBar->setIconSize(QSize(size.split('x').at(0).toInt(), (size.split('x').at(0).toInt()))); + int int_size = size.split('x').at(0).toInt(); + switch (int_size) + { + case 24: ui->action24x24->setChecked(true); + break; + case 32: ui->action32x32->setChecked(true); + break; + default: ui->action32x32->setChecked(true); + } +} + +void Caesium::on_action32x32_triggered() +{ + ui->action32x32->setChecked(true); + settings.setValue("Settings/iconsize", ui->action32x32->text()); + ui->mainToolBar->setIconSize(QSize(ui->action32x32->text().split('x').at(0).toInt(), ui->action32x32->text().split('x').at(0).toInt())); +} + +void Caesium::on_action24x24_triggered() +{ + ui->action24x24->setChecked(true); + settings.setValue("Settings/iconsize", ui->action24x24->text()); + ui->mainToolBar->setIconSize(QSize(ui->action24x24->text().split('x').at(0).toInt(), ui->action24x24->text().split('x').at(0).toInt())); +} + +void Caesium::on_actionSave_Profile_triggered() +{ + QString fileName = QFileDialog::getSaveFileName(this, tr("Save as..."), QStandardPaths::standardLocations(QStandardPaths::DocumentsLocation).at(0), tr("Caesium Profile (*.cpf)")); + if (fileName != "") + { + QSettings profile(fileName, QSettings::IniFormat); + profile.setIniCodec("UTF-8"); + profile.setValue("Profile/quality", ui->qualitySlider->value()); + profile.setValue("Profile/same_quality", ui->sameLevelCheckBox->isChecked()); + profile.setValue("Profile/format", ui->formatComboBox->currentIndex()); + profile.setValue("Profile/output", ui->outputLineEdit->text()); + profile.setValue("Profile/same_folder", ui->sameFolderCheckBox->isChecked()); + profile.setValue("Profile/suffix", ui->suffixLineEdit->text()); + profile.setValue("Profile/resize", ui->resizeGroupBox->isChecked()); + profile.setValue("Profile/resize_mode", ui->methodComboBox->currentIndex()); + profile.setValue("Profile/width", ui->widthSpinBox->value()); + profile.setValue("Profile/height", ui->heightSpinBox->value()); + profile.setValue("Profile/same_resize", ui->sameResolutionCheckBox->isChecked()); + profile.setValue("Profile/keep_ratio", ui->keepRatioCheckBox->isChecked()); + profile.setValue("Profile/no_enlarge", ui->noEnlargeCheckBox->isChecked()); + profile.setValue("Profile/keep_structure", ui->keepStructureCheckBox->isChecked()); + + } + last_profile = fileName; +} + +void Caesium::on_actionLoad_Profile_triggered() +{ + QString fileName = QFileDialog::getOpenFileName(this, tr("Select a profile file..."), QStandardPaths::standardLocations(QStandardPaths::DocumentsLocation).at(0), tr("Caesium Profile (*.cpf)")); + if (fileName != "") + { + Caesium::profileLoadEngine(fileName); + } +} + +void Caesium::profileLoadEngine(QString fileName) +{ + if (fileName != "") + { + QSettings profile(fileName, QSettings::IniFormat); + profile.setIniCodec("UTF-8"); + ui->qualitySlider->setValue(profile.value("Profile/quality").value()); + ui->sameLevelCheckBox->setChecked(profile.value("Profile/same_quality").value()); + ui->formatComboBox->setCurrentIndex(profile.value("Profile/format").value()); + ui->outputLineEdit->setText(profile.value("Profile/output").value()); + ui->sameFolderCheckBox->setChecked(profile.value("Profile/same_folder").value()); + ui->suffixLineEdit->setText(profile.value("Profile/suffix").value()); + ui->resizeGroupBox->setChecked(profile.value("Profile/resize").value()); + ui->methodComboBox->setCurrentIndex(profile.value("Profile/resize_mode").value()); + ui->widthSpinBox->setValue(profile.value("Profile/width").value()); + ui->heightSpinBox->setValue(profile.value("Profile/height").value()); + ui->sameResolutionCheckBox->setChecked(profile.value("Profile/same_resize").value()); + ui->keepRatioCheckBox->setChecked(profile.value("Profile/keep_ratio").value()); + ui->noEnlargeCheckBox->setChecked(profile.value("Profile/no_enlarge").value()); + ui->keepStructureCheckBox->setChecked(profile.value("Profile/keep_structure").value()); + last_profile = fileName; + } + else + { + ui->qualitySlider->setValue(80); + } +} + +void Caesium::on_compressButton_clicked() +{ + Caesium::on_actionCompress_triggered(); +} + +void Caesium::setImageToLabel1(QImage image) +{ + currentImage = image; + imageLabel1->setPixmap(QPixmap::fromImage(image)); +} + +void Caesium::setImageToLabel2(QImage image) +{ + imageLabel2->setPixmap(QPixmap::fromImage(image)); +} + +void Caesium::adjustPreviewView() +{ + if (!deleting) + { + img_ratio = (double) imageLabel1->pixmap()->width() / imageLabel1->pixmap()->height(); + if (ui->listTreeWidget->selectedItems().at(0)->text(6) == "") + { + if (ui->methodComboBox->currentIndex() == 0) + { + ui->widthSpinBox->setValue(imageLabel1->pixmap()->width()); + ui->heightSpinBox->setValue(imageLabel1->pixmap()->height()); + } + else + { + ui->widthSpinBox->setValue(100); + ui->heightSpinBox->setValue(100); + } + } + else if(ui->methodComboBox->currentIndex() == 0) + { + QList wh = resolutionToInt(ui->listTreeWidget->selectedItems().at(0)->text(6)); + ui->widthSpinBox->setValue(wh.at(0)); + ui->heightSpinBox->setValue(wh.at(1)); + } + else + { + QList wh = resolutionToInt(ui->listTreeWidget->selectedItems().at(0)->text(6)); + ui->widthSpinBox->setValue(100 * wh.at(0) / imageLabel1->pixmap()->width()); + ui->heightSpinBox->setValue(100 * wh.at(1) / imageLabel1->pixmap()->height()); + } + } + if(settings.value("Preferences/imageview").value() == "fit") + { + Caesium::fitWindow(); + orig_on = false; + } + else + { + Caesium::originalSize(); + orig_on = true; + } + deleting = false; +} + +void Caesium::loadingCompressedPreview() +{ + QMovie *movie = new QMovie(":/icons/loading.gif"); + imageLabel2->setMovie(movie); + movie->start(); + imageLabel2->setGeometry(0, 0, 32, 32); +} + +void Caesium::on_methodComboBox_currentIndexChanged(int index) +{ + ui->noEnlargeCheckBox->setEnabled(index == 0); + if (index == 0) + { + ui->heightSpinBox->setSuffix(" px"); + ui->widthSpinBox->setSuffix(" px"); + } + else + { + ui->heightSpinBox->setSuffix(" %"); + ui->widthSpinBox->setSuffix(" %"); + ui->widthSpinBox->setValue(100); + ui->heightSpinBox->setValue(100); + } +} + +void Caesium::loadLayout() + { + this->restoreGeometry(settings.value("Layout/geometry").toByteArray()); + this->restoreState(settings.value("Layout/state").toByteArray()); + } + +void Caesium::on_actionMinimize_to_tray_triggered() +{ + this->hide(); + restoreAction->setEnabled(true); +} + +void Caesium::trayIconHandle(QSystemTrayIcon::ActivationReason reason) +{ + switch (reason) + { + case QSystemTrayIcon::Trigger: + break; + case QSystemTrayIcon::DoubleClick: + this->show(); + restoreAction->setEnabled(false); + break; + case QSystemTrayIcon::MiddleClick: + break; + default:; + } +} + +void Caesium::createTrayIcon() +{ + trayIcon->show(); + restoreAction = new QAction(QIcon(":/icons/undo.png"), tr("Restore"), this); + trayIconMenu->addAction(restoreAction); + restoreAction->setEnabled(false); + trayIconMenu->addSeparator(); + closeFromTrayAction = new QAction(QIcon(":/icons/exit.png"), tr("Close"), this); + trayIconMenu->addAction(closeFromTrayAction); + trayIcon->setContextMenu(trayIconMenu); + + connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(trayIconHandle(QSystemTrayIcon::ActivationReason))); + connect(closeFromTrayAction, SIGNAL(triggered()), this, SLOT(close())); + connect(restoreAction, SIGNAL(triggered()), this, SLOT(show())); + connect(restoreAction, SIGNAL(triggered(bool)), restoreAction, SLOT(setEnabled(bool))); +} + +void Caesium::adjustPercentage(int value) +{ + if (ui->methodComboBox->currentIndex() == 1 && ui->keepRatioCheckBox->isChecked()) + { + ui->heightSpinBox->setValue(value); + ui->widthSpinBox->setValue(value); + } +} + +void Caesium::adjustHeight() +{ + if(ui->methodComboBox->currentIndex() == 0 && ui->keepRatioCheckBox->isChecked()) + { + ui->heightSpinBox->setValue(ui->widthSpinBox->value() / img_ratio); + } +} + +void Caesium::adjustWidth() +{ + if(ui->methodComboBox->currentIndex() == 0 && ui->keepRatioCheckBox->isChecked()) + { + ui->widthSpinBox->setValue(ui->heightSpinBox->value() * img_ratio); + } +} + +void Caesium::on_keepRatioCheckBox_toggled(bool checked) +{ + if (checked && ui->methodComboBox->currentIndex() == 1) + { + ui->widthSpinBox->setValue(ui->heightSpinBox->value()); + } + else if (checked && ui->methodComboBox->currentIndex() == 0 && img_ratio != 0) + { + ui->heightSpinBox->setValue((double) ui->widthSpinBox->value() / (double) img_ratio); + } +} + +void Caesium::runPreview() +{ + ImageResize imgResize; + bool resize = ui->resizeGroupBox->isChecked(); + bool fixed; + int w = ui->widthSpinBox->value(); + int h = ui->heightSpinBox->value(); + bool ratio = ui->keepRatioCheckBox->isChecked(); + bool noEnlarge = ui->noEnlargeCheckBox->isChecked(); + if (ui->methodComboBox->currentIndex() == 0) + { + fixed = true; + } + else + { + fixed = false; + } + + QString tempFolder = QDir::tempPath(); + QDir caesiumTemp(tempFolder + "/" + "_caesium_"); + if (!caesiumTemp.exists()) + { + caesiumTemp.mkpath(tempFolder + "/" + "_caesium_"); + } + if (ui->listTreeWidget->selectedItems().count() != 0) + { + for (int i = 0; i < ui->listTreeWidget->selectedItems().count(); i++) + { + QString rndString = ui->listTreeWidget->selectedItems().at(i)->text(0); + QFileInfo info(tempFolder + "/_caesium_/" + rndString + ".cae"); + QFileInfo orig(ui->listTreeWidget->selectedItems().at(i)->text(7)); + QImage image(ui->listTreeWidget->selectedItems().at(i)->text(7)); + if (resize && fixed) + { + image = imgResize.fixedResize(image, w, h, ratio, noEnlarge); + } + else if (resize && fixed == false) + { + int new_w = image.width() * w / 100; + int new_h = image.height() * h / 100; + image = imgResize.pergentageResize(image, new_w, new_h); + } + if (ui->formatComboBox->currentIndex() == 0) + { + image.save(tempFolder + "/_caesium_/" + rndString + ".cae", ui->formatComboBox->currentText().toLower().toLatin1(), ui->qualitySlider->value()); + } + else if (ui->formatComboBox->currentIndex() == 3) + { + if (orig.suffix().toLatin1().toLower() == "jpg") + { + image.save(tempFolder + "/_caesium_/" + rndString + ".cae", "jpg", ui->qualitySlider->value()); + } + else + { + image.save(tempFolder + "/_caesium_/" + rndString + ".cae", orig.suffix().toLatin1(), 1); + } + } + else + { + image.save(tempFolder + "/_caesium_/" + rndString + ".cae", ui->formatComboBox->currentText().toLower().toLatin1(), 1); + } + if (settings.value("Preferences/exif").value()) + { + QString exec = "tools\\exif_copy.exe \"" + ui->listTreeWidget->selectedItems().at(i)->text(7) + "\" \"" + tempFolder + "/_caesium_/" + rndString + ".cae\""; + m_startProcess(exec); + } + ui->listTreeWidget->selectedItems().at(i)->setText(2, fixedSize(info.size(), 0)); + ui->listTreeWidget->selectedItems().at(i)->setText(3, getRatio(orig.size(), info.size())); + ui->listTreeWidget->selectedItems().at(i)->setText(4, QString::number(ui->qualitySlider->value())); + ui->listTreeWidget->selectedItems().at(i)->setText(6, QString::number(image.width()) + "x" + QString::number(image.height())); + } + preview_on = true; + if(settings.value("Preferences/imageview").value() == "fit" || !orig_on) + { + Caesium::fitWindow(); + } + else + { + Caesium::scaleImage(1.0); + } + QThread *loadThread = new LoadPreview(ui->listTreeWidget->selectedItems().at(0)->text(7), this); + connect(loadThread, SIGNAL(imageLoaded2(QImage)), this, SLOT(setImageToLabel2(QImage))); + connect(loadThread, SIGNAL(clearSignal()), imageLabel2, SLOT(clear())); + connect(loadThread, SIGNAL(loadingCompressedPreview()), this, SLOT(loadingCompressedPreview())); + connect(this, SIGNAL(loadThreadStop()), loadThread, SLOT(terminate())); + connect(loadThread, SIGNAL(finished()), this, SLOT(adjustPreviewView())); + loadThread->start(); + //preview_on = false; + Caesium::enableButtons(true); + } +} + +void Caesium::on_setResolutionButton_clicked() +{ + int w, h; + if (ui->sameResolutionCheckBox->isChecked()) + { + if (ui->methodComboBox->currentIndex() == 0) + { + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + ui->listTreeWidget->topLevelItem(i)->setText(6, QString::number(ui->widthSpinBox->value()) + "x" + QString::number(ui->heightSpinBox->value())); + } + } + else + { + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + w = ui->widthSpinBox->value() * ui->listTreeWidget->topLevelItem(i)->text(5).section('x', 0, 0).toInt() / 100; + h = ui->heightSpinBox->value() * ui->listTreeWidget->topLevelItem(i)->text(5).section('x', 1, 1).toInt() / 100; + ui->listTreeWidget->topLevelItem(i)->setText(6, QString::number(w) + "x" + QString::number(h)); + } + } + } + else if (ui->listTreeWidget->selectedItems().count() != 0) + { + if (ui->methodComboBox->currentIndex() == 0) + { + for (int i = 0; i < ui->listTreeWidget->selectedItems().count(); i++) + { + ui->listTreeWidget->selectedItems().at(i)->setText(6, QString::number(ui->widthSpinBox->value()) + "x" + QString::number(ui->heightSpinBox->value())); + } + } + else + { + for (int i = 0; i < ui->listTreeWidget->selectedItems().count(); i++) + { + w = ui->widthSpinBox->value() * ui->listTreeWidget->selectedItems().at(i)->text(5).section('x', 0, 0).toInt() / 100; + h = ui->heightSpinBox->value() * ui->listTreeWidget->selectedItems().at(i)->text(5).section('x', 1, 1).toInt() / 100; + ui->listTreeWidget->selectedItems().at(i)->setText(6, QString::number(w) + "x" + QString::number(h)); + } + } + } +} + +bool Caesium::checkParentFolder(QString set, QString new_folder) +{ + if(set == "") + { + return false; + } + if (set.contains(new_folder, Qt::CaseSensitive)) + { + parent_folder = new_folder; + return true; + } + else if (new_folder.contains(set, Qt::CaseSensitive)) + { + return true; + } + else if (new_folder.section('\\', 0, -2).compare(set.section('\\', 0, -2)) == 0 || new_folder.section('/', 0, -2).compare(set.section('/', 0, -2)) == 0) + { + parent_folder = new_folder.section('\\', 0, -2); + if (new_folder.section('\\', 0, -2) == "") + { + parent_folder = new_folder.section('/', 0, -2); + } + return true; + } + else + { + return false; + } +} + +void Caesium::errorMessageBox() +{ + QMessageBox::critical(this, tr("Error"), tr("Failed to create the directory structure."), QMessageBox::Ok); +} + +void Caesium::dropWidgetStructure(QString path) +{ + if (parent_folder == "") + { + parent_folder = path; + } + ui->keepStructureCheckBox->setEnabled(Caesium::checkParentFolder(parent_folder, path)); +} + +void Caesium::saveList(QString path) +{ + QFile file (path); + if (file.open(QIODevice::WriteOnly)) + { + QTextStream stream(&file); + for (int i = 0; i < ui->listTreeWidget->topLevelItemCount(); i++) + { + stream << ui->listTreeWidget->topLevelItem(i)->text(0) + "|" + << ui->listTreeWidget->topLevelItem(i)->text(1) + "|" + << ui->listTreeWidget->topLevelItem(i)->text(2) + "|" + << ui->listTreeWidget->topLevelItem(i)->text(3) + "|" + << ui->listTreeWidget->topLevelItem(i)->text(4) + "|" + << ui->listTreeWidget->topLevelItem(i)->text(5) + "|" + << ui->listTreeWidget->topLevelItem(i)->text(6) + "|" + << ui->listTreeWidget->topLevelItem(i)->text(7) + "|" + << endl; + } + } +} + +void Caesium::openList(QString path) +{ + QFile list(path); + if (list.open(QIODevice::ReadOnly)) + { + ui->listTreeWidget->clear(); + QTextStream stream(&list); + QString line = stream.readLine(0); + while (line != QString::null) + { + QStringList splittedLine = line.split("|"); + QTreeWidgetItem *item = new QTreeWidgetItem(splittedLine, 0); + item->setIcon(0, QIcon(":/icons/added.png")); + ui->listTreeWidget->insertTopLevelItem(0, item); + line = stream.readLine(0); + } + } + opened_list = path; + Caesium::countUpdate(); +} diff --git a/caesium.h b/caesium.h new file mode 100644 index 0000000..77178b7 --- /dev/null +++ b/caesium.h @@ -0,0 +1,131 @@ +#ifndef CAESIUM_H +#define CAESIUM_H + +#include +#include +#include +#include + +#include +#include "preferences.h" +#include "about.h" +#include "updater.h" +#include "exit.h" + +namespace Ui { + class Caesium; +} + +class Caesium : public QMainWindow +{ + Q_OBJECT + +public: + explicit Caesium(QWidget *parent = 0); + ~Caesium(); + +private: + Ui::Caesium *ui; + Preferences *pf; + AboutDialog *about; + Exit *exit; + Updater *updater; + QLabel *imageLabel1; + QLabel *imageLabel2; + QSystemTrayIcon *trayIcon; + QMenu *trayIconMenu; + QAction *restoreAction; + QAction *closeFromTrayAction; + +private slots: + void on_actionRemove_Item_From_List_and_Hard_Disk_triggered(); + void on_outputLineEdit_textChanged(QString ); + void on_zoomOutToolButton_clicked(); + void on_zoomInToolButton_clicked(); + void on_actionOpen_Folder_triggered(); + void on_actionSettings_triggered(); + void on_originalToolButton_clicked(); + void on_fitToolButton_clicked(); + void on_suffixLineEdit_textChanged(QString text); + void on_cancelButton_clicked(); + void on_actionCompress_triggered(); + void on_updateButton_clicked(); + void on_actionShow_Toolbar_toggled(bool t_checked); + void on_actionCheck_for_Updates_triggered(); + void on_actionAbout_Qt_triggered(); + void on_actionOpen_List_triggered(); + void on_actionSave_List_As_triggered(); + void on_previewButton_clicked(); + void on_listTreeWidget_itemSelectionChanged(); + void on_actionPreview_triggered(); + void on_setQualityButton_clicked(); + void on_cantSetButton_clicked(); + void on_formatComboBox_currentIndexChanged(int); + void on_undoButton_clicked(); + void on_sameFolderCheckBox_clicked(bool checked); + void on_browseToolButton_clicked(); + void on_actionDonate_to_Caesium_triggered(); + void on_actionOnline_Support_triggered(); + void on_actionWebsite_triggered(); + void on_actionClear_List_triggered(); + void on_removeButton_clicked(); + void on_actionRemove_Item_triggered(); + void on_addButton_clicked(); + void on_actionAbout_triggered(); + void on_actionExit_triggered(); + void closeEvent(QCloseEvent *event); + void on_actionAdd_Pictures_triggered(); + void showVersionLabel(bool); + void checkForUpdateStartup(); + QStringList loadImages(); + QStringList loadQuality(); + void showMessageBox(); + void updateUI(int, int, QString); + void processingIcon(int, QString); + void fitWindow(); + void originalSize(); + void scaleImage(double factor); + bool duplicateCheck(QString name, QString dir); + void adjustScrollbars(int v, int h, int p); + void enableButtons(bool flag); + void countUpdate(); + void afterPFUpdate(); + int outputFolderCreation(); + void openList(); + void lstSave(); + void on_actionSave_List_triggered(); + void toolbarIconSize(); + void on_action32x32_triggered(); + void on_action24x24_triggered(); + void on_actionSave_Profile_triggered(); + void on_actionLoad_Profile_triggered(); + void profileLoadEngine(QString fileName); + void on_compressButton_clicked(); + void setImageToLabel1(QImage image); + void setImageToLabel2(QImage image); + void adjustPreviewView(); + void loadingCompressedPreview(); + void on_methodComboBox_currentIndexChanged(int index); + void loadLayout(); + void on_actionMinimize_to_tray_triggered(); + void trayIconHandle(QSystemTrayIcon::ActivationReason reason); + void createTrayIcon(); + void adjustPercentage(int value); + void runPreview(); + void on_keepRatioCheckBox_toggled(bool checked); + void adjustHeight(); + void adjustWidth(); + void on_setResolutionButton_clicked(); + bool checkParentFolder(QString set, QString new_folder); + QList loadWidth(); + QList loadHeight(); + void errorMessageBox(); + void dropWidgetStructure(QString path); + void saveList(QString path); + void openList(QString path); + +signals: + void loadThreadStop(); +}; + +#endif // CAESIUM_H diff --git a/caesium.rc b/caesium.rc new file mode 100644 index 0000000..bff96ea --- /dev/null +++ b/caesium.rc @@ -0,0 +1,3 @@ +IDI_ICON1 ICON DISCARDABLE "icon.ico" +IDI_ICON2 ICON DISCARDABLE "clf.ico" +IDI_ICON3 ICON DISCARDABLE "cpf.ico" \ No newline at end of file diff --git a/caesium.ui b/caesium.ui new file mode 100644 index 0000000..c6e9cab --- /dev/null +++ b/caesium.ui @@ -0,0 +1,2680 @@ + + + Caesium + + + + 0 + 0 + 1250 + 620 + + + + + 800 + 0 + + + + Caesium - Image Compressor + + + + :/icons/caesium_icon.png:/icons/caesium_icon.png + + + + + 4 + + + 4 + + + 4 + + + 4 + + + + + + 0 + 0 + + + + + + + QFrame::Plain + + + 2 + + + 1 + + + Qt::Horizontal + + + true + + + false + + + + + + + + 1 + + + + + + 0 + 0 + + + + Qt::StrongFocus + + + Qt::DefaultContextMenu + + + true + + + + + + false + + + false + + + QAbstractItemView::DropOnly + + + Qt::IgnoreAction + + + true + + + QAbstractItemView::ExtendedSelection + + + + 16 + 16 + + + + QAbstractItemView::ScrollPerItem + + + 0 + + + true + + + true + + + true + + + + Name + + + + + Size + + + + + New Size + + + + + Ratio + + + + + Quality + + + + + Resolution + + + + + New Resolution + + + + + Full Path + + + + + + + + + + + + + Add + + + + :/icons/plus.png:/icons/plus.png + + + true + + + + + + + + + + Remove + + + + :/icons/delete.png:/icons/delete.png + + + + + + + + + + Preview + + + + :/icons/search.png:/icons/search.png + + + + + + + + + + Qt::Horizontal + + + QSizePolicy::MinimumExpanding + + + + 40 + 20 + + + + + + + + + 0 + 0 + + + + + 16777215 + 18 + + + + + + + + + 170 + 0 + 255 + + + + + + + + + 170 + 0 + 255 + + + + + + + + + 120 + 120 + 120 + + + + + + + + + 8 + 75 + true + true + + + + PointingHandCursor + + + + + + A new version is available! + + + + :/icons/updates.png:/icons/updates.png + + + true + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + 75 + true + + + + Compress! + + + + :/icons/compress.png:/icons/compress.png + + + + + + + + + + + + Qt::Horizontal + + + + + + + 1 + + + + + + + + Compression Options + + + + 6 + + + 6 + + + 6 + + + 6 + + + + + + + + + + Quality: + + + + + + + + + + 1 + + + 100 + + + 5 + + + 80 + + + Qt::Horizontal + + + QSlider::TicksBelow + + + 10 + + + + + + + + + + 1 + + + 100 + + + 80 + + + + + + + + + + + + + + Same for all + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + Set Quality + + + + + + + + + + + + 0 + 0 + + + + + 44 + 16777215 + + + + + + + Format: + + + + + + + + 0 + 0 + + + + + + + + JPG + + + + + PNG + + + + + BMP + + + + + Input + + + + + + + + + 16777215 + 20 + + + + + 8 + + + + + + + I can't set the quality! + + + + :/icons/help.png:/icons/help.png + + + + 16 + 16 + + + + true + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + Resize + + + true + + + false + + + + 6 + + + 6 + + + 6 + + + 6 + + + 3 + + + + + + + + + + Absolute + + + + + Percentage + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Apply + + + + + + + Same for all + + + + + + + + + + + + 0 + 0 + + + + Width: + + + + + + + px + + + 1 + + + 20000 + + + 100 + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + + 0 + 0 + + + + Height: + + + + + + + px + + + 1 + + + 20000 + + + 100 + + + + + + + + + + + Keep Aspect Ratio + + + + + + + Do not enlarge images + + + + + + + + + + + + + + + + + Output Folder + + + + 3 + + + 6 + + + 6 + + + 6 + + + 6 + + + + + + + + + + + + true + + + + + + + + + + + + + ... + + + + + + + Keep Structure + + + + + + + + + + + + + + Remember last folder + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + Same folder as input + + + + + + + + + + + + 0 + 0 + + + + + + + Suffix: + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + :/icons/undo.png:/icons/undo.png + + + + 14 + 14 + + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 14 + + + + + + + + + 255 + 0 + 0 + + + + + + + 255 + 0 + 0 + + + + + + + + + 255 + 0 + 0 + + + + + + + 255 + 0 + 0 + + + + + + + + + 120 + 120 + 120 + + + + + + + 120 + 120 + 120 + + + + + + + + + 75 + true + + + + + + + Not allowed! + + + Qt::PlainText + + + + + + + + + + + + + + + + + + + Qt::Vertical + + + + + + + 1 + + + + + + 0 + 0 + + + + + + + Waiting... + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 17 + + + + + + + 100 + + + 0 + + + + + + + false + + + + 0 + 0 + + + + + 16777215 + 20 + + + + + + + Cancel + + + + :/icons/delete.png:/icons/delete.png + + + + + + + + 0 + 0 + + + + + 16777215 + 20 + + + + The original files will be deleted! + + + + :/icons/warning.png:/icons/warning.png + + + + 14 + 14 + + + + true + + + + + + + + + + + + + + + + 3 + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + Original Image + + + + + + false + + + Qt::AlignCenter + + + + + 53 + 17 + 176 + 223 + + + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + Compressed Image + + + + + + false + + + Qt::AlignCenter + + + + + 53 + 16 + 176 + 223 + + + + + + + + + 3 + + + QLayout::SetNoConstraint + + + + + false + + + + 0 + 0 + + + + + + + + + + + :/icons/fit_window.png:/icons/fit_window.png + + + + + + + false + + + + + + + + + + :/icons/real_size.png:/icons/real_size.png + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Auto preview + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + false + + + + 8 + 75 + true + + + + + + + + + + + :/icons/zoom_out.png:/icons/zoom_out.png + + + + + + + false + + + + + + + + + + :/icons/zoom_in.png:/icons/zoom_in.png + + + + + + + + + + + + + + + + + 0 + 0 + 1250 + 21 + + + + + File + + + + + + + + + + + + + + + + + + Edit + + + + + + + + Action + + + + + + + + View + + + + Toolbar Icon Size + + + + + + + + + + Help + + + + + + + + + + + + + + Tools + + + + + + + + + + + + + Qt::NoContextMenu + + + true + + + Qt::AllToolBarAreas + + + + 32 + 32 + + + + true + + + TopToolBarArea + + + false + + + + + + + + + + + + + + + + + + + + + + + + :/icons/add.png:/icons/add.png + + + Add Pictures... + + + Ctrl+O + + + + + + :/icons/openlist.png:/icons/openlist.png + + + Open List... + + + Ctrl+L + + + + + + :/icons/savelistas.png:/icons/savelistas.png + + + Save List As... + + + Ctrl+S + + + + + + :/icons/exit.png:/icons/exit.png + + + Exit + + + Ctrl+Q + + + + + + :/icons/remove.png:/icons/remove.png + + + Remove Item + + + Del + + + + + + :/icons/clear.png:/icons/clear.png + + + Clear List + + + Ctrl+Del + + + + + + :/icons/preview.png:/icons/preview.png + + + Preview + + + Ctrl+P + + + + + + :/icons/compress.png:/icons/compress.png + + + Compress! + + + + + + :/icons/help.png:/icons/help.png + + + Online Support + + + + + + :/icons/web.png:/icons/web.png + + + Website + + + Ctrl+W + + + + + + :/icons/updates.png:/icons/updates.png + + + Check for Updates + + + + + + :/icons/donate.png:/icons/donate.png + + + Donate to Caesium + + + + + + :/icons/info.png:/icons/info.png + + + About + + + + + + :/icons/qt.png:/icons/qt.png + + + About Qt + + + + + true + + + true + + + Show Toolbar + + + + + + :/icons/settings.png:/icons/settings.png + + + Settings + + + + + + :/icons/open_folder.png:/icons/open_folder.png + + + Open Folder... + + + Ctrl+Shift+O + + + + + + :/icons/remove_hdd.png:/icons/remove_hdd.png + + + Remove Item From List and Hard Disk + + + Ctrl+Shift+D + + + + + false + + + + :/icons/savelist.png:/icons/savelist.png + + + Save List + + + + + true + + + 32x32 + + + + + true + + + 24x24 + + + + + + :/icons/save_profile.png:/icons/save_profile.png + + + Save Profile... + + + + + + :/icons/load_profile.png:/icons/load_profile.png + + + Load Profile... + + + + + false + + + Minimize to tray + + + Minimize the application to system tray + + + Ctrl+Alt+Q + + + + + + + QDropTreeWidget + QTreeWidget +

qdroptreewidget.h
+ + + + + + + + qualitySlider + sliderMoved(int) + qualitySpinBox + setValue(int) + + + 212 + 504 + + + 294 + 500 + + + + + qualitySpinBox + valueChanged(int) + qualitySlider + setValue(int) + + + 294 + 500 + + + 212 + 504 + + + + + sameFolderCheckBox + toggled(bool) + outputLineEdit + setDisabled(bool) + + + 888 + 528 + + + 857 + 499 + + + + + sameFolderCheckBox + toggled(bool) + browseToolButton + setDisabled(bool) + + + 888 + 528 + + + 888 + 499 + + + + + qualitySlider + valueChanged(int) + qualitySpinBox + setValue(int) + + + 208 + 504 + + + 294 + 500 + + + + + diff --git a/caesium_bk.ui b/caesium_bk.ui new file mode 100644 index 0000000..f0e343d --- /dev/null +++ b/caesium_bk.ui @@ -0,0 +1,2387 @@ + + + Caesium + + + + 0 + 0 + 900 + 552 + + + + Caesium - Image Compressor + + + + :/icons/caesium_icon.png:/icons/caesium_icon.png + + + + + 4 + + + + + + 0 + 0 + + + + + + + QFrame::Plain + + + 2 + + + 1 + + + Qt::Horizontal + + + true + + + false + + + + + + + + 1 + + + + + + 0 + 0 + + + + Qt::StrongFocus + + + Qt::DefaultContextMenu + + + true + + + + + + false + + + false + + + QAbstractItemView::DropOnly + + + Qt::IgnoreAction + + + true + + + QAbstractItemView::ExtendedSelection + + + + 16 + 16 + + + + QAbstractItemView::ScrollPerItem + + + 0 + + + true + + + true + + + true + + + + Name + + + + + Size + + + + + New Size + + + + + Ratio + + + + + Quality + + + + + Full Path + + + + + + + + + + + + + Add + + + + :/icons/plus.png:/icons/plus.png + + + true + + + + + + + + + + Remove + + + + :/icons/delete.png:/icons/delete.png + + + + + + + + + + Preview + + + + :/icons/search.png:/icons/search.png + + + + + + + + + + Qt::Horizontal + + + QSizePolicy::MinimumExpanding + + + + 40 + 20 + + + + + + + + + 0 + 0 + + + + + 16777215 + 18 + + + + + + + + + 170 + 0 + 255 + + + + + + + + + 170 + 0 + 255 + + + + + + + + + 120 + 120 + 120 + + + + + + + + + 8 + 75 + true + true + + + + + + + A new version is available! + + + true + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + 75 + true + + + + Compress! + + + + :/icons/compress.png:/icons/compress.png + + + + + + + + + + + + Qt::Horizontal + + + + + + + 1 + + + + + + + + Compression Options + + + + 6 + + + + + + + + + + + + Quality: + + + + + + + + + + 1 + + + 100 + + + 5 + + + 80 + + + Qt::Horizontal + + + QSlider::TicksBelow + + + 10 + + + + + + + + + + 1 + + + 100 + + + 80 + + + + + + + + + + + + + + + + Same Quality For All + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + Set Quality + + + + + + + + + + + + 0 + 0 + + + + + 44 + 16777215 + + + + + + + Format: + + + + + + + + 0 + 0 + + + + + + + + JPG + + + + + PNG + + + + + BMP + + + + + + + + + 16777215 + 20 + + + + + 8 + + + + + + + I can't set the quality! + + + + :/icons/help.png:/icons/help.png + + + + 16 + 16 + + + + true + + + + + + + Qt::Horizontal + + + + 20 + 20 + + + + + + + + + + + + + + + + Output Folder + + + + 3 + + + 6 + + + + + + + + + + + + + + + + + + + ... + + + + + + + + + + + + + + Remember Last Folder + + + + + + + + + + Same Folder as Input + + + + + + + + + + + + 0 + 0 + + + + + + + Suffix: + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + :/icons/undo.png:/icons/undo.png + + + + 14 + 14 + + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 14 + + + + + + + + + 255 + 0 + 0 + + + + + + + 255 + 0 + 0 + + + + + + + + + 255 + 0 + 0 + + + + + + + 255 + 0 + 0 + + + + + + + + + 120 + 120 + 120 + + + + + + + 120 + 120 + 120 + + + + + + + + + 75 + true + + + + + + + Not allowed! + + + Qt::PlainText + + + + + + + + + + + + + + + + + + + Qt::Vertical + + + + + + + 1 + + + + + + 0 + 0 + + + + + + + Waiting... + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 17 + + + + + + + 100 + + + 0 + + + + + + + false + + + + 0 + 0 + + + + + 16777215 + 20 + + + + + + + Cancel + + + + :/icons/delete.png:/icons/delete.png + + + + + + + + 0 + 0 + + + + + 16777215 + 20 + + + + The original files will be deleted! + + + + :/icons/warning.png:/icons/warning.png + + + + 14 + 14 + + + + true + + + + + + + + + + + + + + + + 3 + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + Original Image + + + + + + false + + + Qt::AlignCenter + + + + + 5 + 0 + 176 + 223 + + + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 170 + 170 + 170 + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 127 + 127 + 127 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 255 + + + + + + + 0 + 0 + 0 + + + + + + + 255 + 255 + 255 + + + + + + + 255 + 255 + 220 + + + + + + + 0 + 0 + 0 + + + + + + + + Compressed Image + + + + + + false + + + Qt::AlignCenter + + + + + 5 + 0 + 176 + 223 + + + + + + + + + 3 + + + QLayout::SetNoConstraint + + + + + false + + + + 0 + 0 + + + + + + + + + + + :/icons/fit_window.png:/icons/fit_window.png + + + + + + + false + + + + + + + + + + :/icons/real_size.png:/icons/real_size.png + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + false + + + + 8 + 75 + true + + + + + + + + + + + :/icons/zoom_out.png:/icons/zoom_out.png + + + + + + + false + + + + + + + + + + :/icons/zoom_in.png:/icons/zoom_in.png + + + + + + + + + + + + + + + + + 0 + 0 + 900 + 21 + + + + + File + + + + + + + + + + + + + + + + Edit + + + + + + + + Action + + + + + + + + View + + + + Toolbar Icon Size + + + + + + + + + + Help + + + + + + + + + + + + + + Tools + + + + + + + + + + + + + Qt::NoContextMenu + + + true + + + + 32 + 32 + + + + true + + + TopToolBarArea + + + false + + + + + + + + + + + + + + + + + + + + + + :/icons/add.png:/icons/add.png + + + Add Pictures... + + + Ctrl+O + + + + + + :/icons/openlist.png:/icons/openlist.png + + + Open List... + + + Ctrl+L + + + + + + :/icons/savelistas.png:/icons/savelistas.png + + + Save List As... + + + Ctrl+S + + + + + + :/icons/exit.png:/icons/exit.png + + + Exit + + + Ctrl+Q + + + + + + :/icons/remove.png:/icons/remove.png + + + Remove Item + + + Del + + + + + + :/icons/clear.png:/icons/clear.png + + + Clear List + + + Ctrl+Del + + + + + + :/icons/preview.png:/icons/preview.png + + + Preview + + + Ctrl+P + + + + + + :/icons/compress.png:/icons/compress.png + + + Compress! + + + Return + + + + + + :/icons/help.png:/icons/help.png + + + Online Support + + + + + + :/icons/web.png:/icons/web.png + + + Website + + + Ctrl+W + + + + + + :/icons/updates.png:/icons/updates.png + + + Check for Updates + + + + + + :/icons/donate.png:/icons/donate.png + + + Donate to Caesium + + + + + + :/icons/info.png:/icons/info.png + + + About + + + + + + :/icons/qt.png:/icons/qt.png + + + About Qt + + + + + true + + + true + + + Show Toolbar + + + + + + :/icons/settings.png:/icons/settings.png + + + Settings + + + + + + :/icons/open_folder.png:/icons/open_folder.png + + + Open Folder... + + + Ctrl+Shift+O + + + + + + :/icons/remove_hdd.png:/icons/remove_hdd.png + + + Remove Item From List and Hard Disk + + + Ctrl+Shift+D + + + + + false + + + + :/icons/savelist.png:/icons/savelist.png + + + Save List + + + + + true + + + 32x32 + + + + + true + + + 24x24 + + + + + + :/icons/save_profile.png:/icons/save_profile.png + + + Save Profile... + + + + + + :/icons/load_profile.png:/icons/load_profile.png + + + Load Profile... + + + + + + + QDropTreeWidget + QTreeWidget +
qdroptreewidget.h
+
+
+ + + + + + qualitySlider + sliderMoved(int) + qualitySpinBox + setValue(int) + + + 163 + 419 + + + 329 + 433 + + + + + qualitySpinBox + valueChanged(int) + qualitySlider + setValue(int) + + + 329 + 433 + + + 281 + 435 + + + + + sameFolderCheckBox + toggled(bool) + outputLineEdit + setDisabled(bool) + + + 663 + 461 + + + 632 + 432 + + + + + sameFolderCheckBox + toggled(bool) + browseToolButton + setDisabled(bool) + + + 663 + 461 + + + 663 + 431 + + + + + qualitySlider + valueChanged(int) + qualitySpinBox + setValue(int) + + + 150 + 420 + + + 329 + 433 + + + + +
diff --git a/caesium_br.ts b/caesium_br.ts new file mode 100644 index 0000000..e51dc04 --- /dev/null +++ b/caesium_br.ts @@ -0,0 +1,1062 @@ + + + + + AboutDialog + + + About + Sobre + + + + Information + Informação + + + + Thanks + Obrigado + + + + License + Licensa + + + + Close + Fechar + + + + Name: + Nome: + + + + Version: + VersĂŁo: + + + + Author: + Autor: + + + + Website: + Website: + Página na Web: + + + + Translations: + Tradutores: + + + + For Metatag manipulation + + + + + Base of the icon set + + + + + Caesium + + + Caesium - Image Compressor + Caesium - Compressor de imagem + + + + Name + Nome + + + + Size + Tamanho + + + + New Size + Novo tamanho + + + + Ratio + Taxa + + + + Quality + Qualidade + + + + Resolution + + + + + New Resolution + + + + + Full Path + Caminho completo + + + + Add + Adicionar + + + + Remove + Remover + + + + + Preview + PrĂ©-visualizar + + + + A new version is available! + Uma nova versĂŁo está disponĂ­vel! + + + + Compression Options + Opções de compressĂŁo + + + + Quality: + Qualidade: + + + Same Quality For All + Mesma qualidade para todas + + + + Set Quality + Estabelecer qualidade + + + + Format: + Formato: + + + + JPG + + + + + PNG + + + + + BMP + + + + + Resize + + + + + Absolute + + + + + Percentage + + + + + Height: + + + + + + Same for all + + + + + Input + + + + + Apply + + + + + Width: + + + + + Keep Aspect Ratio + + + + + Do not enlarge images + + + + + Output Folder + Pasta de saĂ­da + + + + Choose and output folder... + + + + + ... + + + + Remember Last Folder + Manter pasta anterior + + + Same Folder as Input + Mesma pasta de entrada + + + + Keep Structure + + + + + Remember last folder + + + + + Same folder as input + + + + + Suffix: + Sufixo: + + + + Not allowed! + NĂŁo permitido! + + + + Waiting... + Aguarde... + + + + + Cancel + Cancelar + + + + The original files will be deleted! + Os arquivos originais foram deletados! + + + + Original Image + Imagem original + + + + Compressed Image + Imagem comprimida + + + + Auto preview + + + + + File + Arquivo + + + + Edit + Editar + + + + Action + Ação + + + + View + Visualizar + + + + Toolbar Icon Size + Tamanho dos Ă­cones da Barra de ferramentas + + + + Help + Ajuda + + + + Tools + Ferramentas + + + + Add Pictures... + Adicionar imagens... + + + + Ctrl+O + + + + + Open List... + Abrir Lista... + + + + Ctrl+L + + + + + Save List As... + Salvar Lista como... + + + + Ctrl+S + + + + + Exit + Sair + + + + Ctrl+Q + + + + + Remove Item + Remover Item + + + + Del + + + + + Clear List + Limpar Lista + + + + Ctrl+Del + + + + + Ctrl+P + + + + + Minimize to tray + + + + + Minimize the application to system tray + + + + + Ctrl+Alt+Q + + + + + + Compress! + Comprimido! + + + Return + Retornar + + + + Online Support + Suporte Online + + + + Website + Página da Web + + + + Ctrl+W + + + + + Check for Updates + Procurar por Atualizações + + + + Donate to Caesium + Doar fundos + + + + About + Sobre + + + + + About Qt + Sobre Qt + + + + Show Toolbar + Mostrar Barra de Ferramentas + + + + Settings + Configurações + + + + Open Folder... + Abrir Pasta... + + + + Ctrl+Shift+O + + + + + Remove Item From List and Hard Disk + Remover Item da Lista e do Disco RĂ­gido + + + + Ctrl+Shift+D + + + + + 32x32 + + + + + 24x24 + + + + + Save Profile... + Salvar Perfil... + + + + Load Profile... + Carregar Perfil... + + + + Save List + Salvar Lista + + + + Select file(s) + Selecionar arquivo(s) + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + Imagens Suportadas (*.bmp *.jpg *.jpeg *.tif *.png *.ppm *.xbm *.xpm);;Imagens PNG (*.png);;Imagens JPEG (*.jpg *jpeg);;Arquivos BMP (*.bmp);;Arquivos TIFF (*.tif *.tiff);;Arquivos PPM (*.ppm);;Arquivos XBM (*.xbm);;Arquivos XPM (*.xpm) + + + + Compression finished! +- + + + + + compressed +- + + + + + skipped +- + + + + + Item count: + Contar Item: + + + + Open Directory + Abrir Pasta + + + + Select output directory + Abrir Pasta de SaĂ­da + + + + I can't set the quality! + Eu nĂŁo consigo colocar a qualidade! + + + + Info + + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG e BMP sĂŁo formatos que perdem menos qualidades e +nĂŁo podem ser comprimidos como JPG +Caesium vai colocar o level de qualidade automaticamente +para aqueles formatos. + + + + + Save as... + Salvar como... + + + + + Caesium List (*.clf) + Lista do Caesium (*.clf) + + + + Open a list file... + Abrir um arquivo de lista... + + + About Qt4 + Sobre Qt4 + + + + + + + Error + Erro + + + + Failed to create the directory. +Aborting. + Falha ao criar a pasta. +Abortando. + + + + The list is empty! Fill it! + O arquivo está vazio! Preencha-o! + + + + Set an Output Directory first! + Coloque um diretĂłrio de saĂ­da primeiro! + + + + Deleting original files... + Deletando arquivos origniais... + + + + Compression done! + CompressĂŁo concluĂ­da! + + + Compression Completed with: +» + CompressĂŁo Completada com: +» + + + compressed +» + comprimido +» + + + skipped +» + pulado +» + + + + error(s) +Time elapsed: + erro(s) +Tempo decorrido: + + + + +Saved space: + +Espaço salvo: + + + + Processing: + + + + + - Caesium - Image Compressor + - Caesium - Compressor de Imagem + + + + + Warning + Aviso + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Essa ação irá deletar os arquivos selecionados PERMANENTEMENTE. +VocĂŞ tem certeza que deseja continuar? + + + + + Yes + Sim + + + + No + NĂŁo + + + + The output folder doesn't exists. +Do you want to create it? + A pasta de saĂ­da nĂŁo existe. +VocĂŞ deseja criá-la? + + + + + Caesium Profile (*.cpf) + Perfil do Caesium (*.cpf) + + + + Select a profile file... + Selecionar um arquivo de perfil... + + + + Restore + + + + + Close + Fechar + + + + Failed to create the directory structure. + + + + + Exit + + + Are you sure? + VocĂŞ tem certeza? + + + + Do you really want to exit Caesium? + VocĂŞ realmente deseja fechar o Caesium? + + + + Always check + Perguntar sempre + + + + Yes + Sim + + + + No + NĂŁo + + + + Preferences + + + Preferences + PreferĂŞncias + + + + General + Geral + + + + Default Path + Pasta padrĂŁo + + + + Use a default output directory if none is specified + Usar a pasta de saĂ­da padrĂŁo se nenhuma for especificada + + + + ... + + + + + Default Image View + Visualizador de imagem padrĂŁo + + + + Original Size + Tamanho Original + + + + Fit Window + + + + + Scan subdirectories when you open a folder + Examinar subpastas quando abrir uma pasta + + + + Load the last used profile at startup + Carregar o perfil anterior quando iniciar + + + + Prompt before exit + + + + + Check for updates at startup + Check for uptades at startup + Procurar por atualizações ao abrir + + + + Compression + CompressĂŁo + + + + Keep EXIF Information while compressing + Manter Informação de EXIF enquanto estiver comprimindo + + + + Delete the original file from disk + Deletar arquivo original do disco + + + + Keep the original Date Information + Manter a informação de data original + + + + + Language + Idioma + + + + Restore last used list at startup + + + + + Restore window size and layout at startup + + + + + Style + + + + + WindowsXP + + + + + Skip if the output size is greater than the original + Pular se o tamanho da imagem compressada for maior + + + + Don't delete if input extension is different from output one + + + + + Optimize PNG files during compression + + + + + Level: + + + + + + Medium (Average) + + + + + OK + + + + + Cancel + Cancelar + + + + Apply + + + + + Information + Informação + + + + You need to restart the application before +changes take effect + VocĂŞ deve reiniciar o aplicativo antes +para que as alterações tenham efeito + + + + Soft (Fastest) + + + + + Hard (Slowest) + + + + + Select default output directory + Selecione a pasta de saĂ­da padrĂŁo + + + + QDropTreeWidget + + + Clear list + Limpar lista + + + + Preview + PrĂ©-visualizar + + + + Remove item + Remover item + + + + Add pictures... + Adicionar imagens... + + + + Open folder... + Abrir pasta... + + + + Open destination folder + Abrir pasta de destino + + + + Open input folder + Abrir pasta da imagem + + + + Remove from list and Hard Disk + Remover da lista e do disco + + + + Updater + + + Caesium updater + Atualizador do Caesium + + + + Your version is + Sua versĂŁo Ă© + + + + Checking version... + Checando versĂŁo... + + + + Start + Iniciar + + + + Close + Fechar + + + + Caesium current version is: + Sua versĂŁo atual do Caesium Ă©: + + + + + + ERROR: Connection timed out... + ERRO: Tempo limite esgotado... + + + + + + An error occurred. Please check your internet connection. + Um erro ocorreu. Por favor, cheque sua conexĂŁo com a internet. + + + + Contacting server... + Contatando o servidor... + + + + Downloading + Baixando + + + + Download completed. + Download completo. + + + + Information + Informação + + + + Caesium will exit now in order to allow the update to run + Caesium vai fechar agora e assim abrir a versĂŁo atualizada + + + diff --git a/caesium_cn.ts b/caesium_cn.ts new file mode 100644 index 0000000..2b37d44 --- /dev/null +++ b/caesium_cn.ts @@ -0,0 +1,1354 @@ + + + + + AboutDialog + + + About + 关于 + + + + Information + äżˇćŻ + + + + Thanks + 致谢 + + + + License + 许可协议 + + + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyrightç‰ćťć‰€ćś‰ © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + + + + Close + ĺ…łé—­ + + + + Name: + ĺŤç§°ďĽš + + + + Version: + ç‰ćś¬ďĽš + + + + Author: + 作者: + + + + Website: + Website: + ĺ®ç˝‘: + + + + Translations: + 翻译: + + + + For Metatag manipulation + ĺ…标记操纵 + + + + Base of the icon set + ĺ›ľç¤şĺźşçˇ€ćťĄćş + + + + Caesium + + + Caesium - Image Compressor + Caesium - 图ĺŹĺŽ‹çĽ©ĺ™¨ + + + + Name + ĺŤç§° + + + + Size + 大小 + + + + New Size + 新大小 + + + + Ratio + 比率 + + + + Quality + 质量 + + + + Resolution + + + + + New Resolution + + + + + Full Path + 完整路径 + + + + Add + 添加 + + + + Remove + ĺ é™¤ + + + + + Preview + é˘„č§ + + + + A new version is available! + ć–°ç‰ćś¬ĺ·˛ĺŹ‘ĺ¸ďĽ + + + + Compression Options + 压缩选项 + + + + Quality: + 质量: + + + Same Quality For All + ĺ…¨é¨ç»źä¸€č´¨é‡Ź + + + + Set Quality + 设定质量 + + + + Format: + 格式: + + + + JPG + JPG + + + + PNG + PNG + + + + BMP + BMP + + + + Resize + + + + + Absolute + + + + + Percentage + + + + + Height: + + + + + + Same for all + + + + + Input + + + + + Apply + + + + + Width: + + + + + Keep Aspect Ratio + + + + + Do not enlarge images + + + + + Output Folder + äżťĺ­ć–‡ä»¶ĺ¤ą + + + + Choose and output folder... + + + + + ... + ... + + + Remember Last Folder + 记住这个位置 + + + Same Folder as Input + 与来ćşć–‡ä»¶ĺ¤ąĺŚä˝Ťç˝® + + + + Keep Structure + + + + + Remember last folder + + + + + Same folder as input + + + + + Suffix: + ĺŽçĽ€ďĽš + + + + Not allowed! + 不被ĺ…č®¸ďĽ + + + + Waiting... + 等待中... + + + + + Cancel + ĺŹ–ć¶ + + + + The original files will be deleted! + 原始文件将被ĺ é™¤ďĽ + + + + Original Image + ĺŽźĺ›ľĺŹ + + + + Compressed Image + 压缩ĺŽĺ›ľĺŹ + + + + Auto preview + + + + + File + 文件 + + + + Edit + 编辑 + + + + Action + 动作 + + + + View + 查看 + + + + Toolbar Icon Size + 工具栏图标大小 + + + + Help + 帮助 + + + + Tools + ĺ·Ąĺ…· + + + + Add Pictures... + 添加图ĺŹ... + + + + Ctrl+O + Ctrl+O + + + + Open List... + 打开ĺ—表... + + + + Ctrl+L + Ctrl+L + + + + Save List As... + 另ĺ­ĺ—表... + + + + Ctrl+S + Ctrl+S + + + + Exit + 退出 + + + + Ctrl+Q + Ctrl+Q + + + + Remove Item + ĺ é™¤é€‰éˇą + + + + Del + Del + + + + Clear List + 清除ĺ—表 + + + + Ctrl+Del + Ctrl+Del + + + + Ctrl+P + Ctrl+P + + + + Minimize to tray + + + + + Minimize the application to system tray + + + + + Ctrl+Alt+Q + + + + + + Compress! + ĺŽ‹çĽ©ďĽ + + + Return + 返回 + + + + Online Support + ĺś¨çşżć”ŻćŚ + + + + Website + ĺ®ç˝‘ + + + + Ctrl+W + Ctrl+W + + + + Check for Updates + 检查更新 + + + + Donate to Caesium + ćŤć¬ľç»™ Caesium + + + + About + 关于 + + + + + About Qt + 关于 Qt + + + + Show Toolbar + ćľç¤şĺ·Ąĺ…·ć Ź + + + + Settings + 设定 + + + + Open Folder... + 打开文件夹... + + + + Ctrl+Shift+O + Ctrl+Shift+O + + + + Remove Item From List and Hard Disk + 从ĺ—表和硬ç›ä¸­ĺ é™¤é€‰éˇą + + + + Ctrl+Shift+D + Ctrl+Shift+D + + + + Save List + äżťĺ­ĺ—表 + + + + 32x32 + 32x32 + + + 48x48 + 48x48 + + + + 24x24 + 24x24 + + + + Save Profile... + äżťĺ­ĺ¸ĺ±€... + + + + Load Profile... + 读取ĺ¸ĺ±€... + + + + Select file(s) + 选择文件 + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + 支ćŚçš„图ĺŹć ĽĺĽŹ (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG 文件 (*.png);;JPEG 文件 (*.jpg *.jpeg);;BMP 文件 (*.bmp);;TIFF 文件 (*.tif *.tiff);;PPM 文件 (*.ppm);;XBM 文件 (*.xbm);;XPM 文件 (*.xpm) + + + + Compression finished! +- + + + + + compressed +- + + + + + skipped +- + + + + + Item count: + 项计数: + + + + Open Directory + 打开文件夹 + + + + Select output directory + 选择保ĺ­ć–‡ä»¶ĺ¤ą + + + + I can't set the quality! + ć— ćł•č®ľç˝®ć­¤č´¨é‡ŹďĽ + + + + Info + äżˇćŻ + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG 与 BMP 为无损格式, +无法如 JPG č¬č˘«ĺŽ‹çĽ©ă€‚ +Caesium 将自动为ĺ®ä»¬č®ľç˝®ĺ适的质量等级。 + + + + + Save as... + 另ĺ­ä¸ş... + + + + + Caesium List (*.clf) + Caesium ĺ—表 (*.clf) + + + + Open a list file... + 打开ĺ—表文件... + + + About Qt4 + 关于 Qt4 + + + + + + + Error + 错误 + + + + Failed to create the directory. +Aborting. + 建立文件夹失败。 +ç»ć­˘ä¸­ă€‚ + + + + The list is empty! Fill it! + ç©şĺ—表ďĽčŻ·ć·»ĺŠ ĺ›ľĺŹďĽ + + + + Set an Output Directory first! + 请ĺ…设定保ĺ­ć–‡ä»¶ĺ¤ąďĽ + + + + Deleting original files... + 原始文件ĺ é™¤ä¸­... + + + + Compression done! + 压缩已完ćďĽ + + + Compression Completed with: +» + 完ć压缩: +» + + + compressed +» + 已压缩 +» + + + skipped +» + 已忽略 +» + + + + error(s) +Time elapsed: + 错误 +čżčˇŚć—¶é—´: + + + + +Saved space: + +çśä¸‹ç©şé—´: + + + + Processing: + + + + + - Caesium - Image Compressor + - Caesium - 图ĺŹĺŽ‹çĽ©ĺ™¨ + + + + + Warning + 警告 + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + 这将会把所选文件永远ĺ é™¤ďĽ +ćŻĺ¦çˇ®ĺ®šç»§ç»­ďĽź + + + + + Yes + ćŻ + + + + No + ĺ¦ + + + + The output folder doesn't exists. +Do you want to create it? + äżťĺ­ć–‡ä»¶ĺ¤ąä¸Ťĺ­ĺś¨ă€‚ +ćŻĺ¦č¦ä»Ąčż™ĺ‘˝ĺŤć–°ĺ»şĺ®ďĽź + + + + + Caesium Profile (*.cpf) + Caesium ĺ¸ĺ±€ (*.cpf) + + + + Select a profile file... + 选择ĺ¸ĺ±€ć–‡ćˇŁ... + + + + Restore + + + + + Close + ĺ…łé—­ + + + + Failed to create the directory structure. + + + + + Exit + + + Are you sure? + 您ćŻĺ¦çˇ®č®¤ďĽź + + + + Do you really want to exit Caesium? + ćŻĺ¦çˇ®č®¤ç¦»ĺĽ€Caesium? + + + + Always check + 始ç»ćŹé—® + + + + Yes + ćŻ + + + + No + ĺ¦ + + + + Preferences + + + Preferences + ĺŹĺĄ˝č®ľç˝® + + + + General + 常规 + + + + Default Path + é»č®¤ä˝Ťç˝® + + + + Use a default output directory if none is specified + 若无特定保ĺ­ä˝Ťç˝®č®ľç˝®ďĽŚä˝żç”¨ä»Ąä¸‹é»č®¤ä˝Ťç˝® + + + + ... + ... + + + + Default Image View + é»č®¤ĺ›ľĺŹćµŹč§ć–ąĺĽŹ + + + + Original Size + 原始大小 + + + buttonGroup + buttonGroup + + + + Fit Window + 窗口大小 + + + + Scan subdirectories when you open a folder + 当打开文件夹时ĺŚć—¶ćśç´˘ĺ­ç›®ĺ˝• + + + + Load the last used profile at startup + 程序ĺŻĺŠ¨ć—¶ĺĽ€ĺŻäą‹ĺ‰Ťä˝żç”¨çš„ĺ¸ç˝® + + + + Prompt before exit + 离开时ćŹé†’ + + + + Check for updates at startup + Check for uptades at startup + ĺŻĺŠ¨ć—¶ćŁ€ćźĄć›´ć–° + + + + Compression + 压缩 + + + + Keep EXIF Information while compressing + 压缩时保留 EXIF äżˇćŻ + + + + Delete the original file from disk + 从硬ç›ä¸­ĺ é™¤ĺŽźĺ§‹ć–‡ä»¶ + + + + Keep the original Date Information + äżťç•™ĺŽźĺ§‹ć—ĄćśźäżˇćŻ + + + + + Language + 语言 + + + + Restore last used list at startup + + + + + Restore window size and layout at startup + + + + + Style + + + + + WindowsXP + + + + + Skip if the output size is greater than the original + 若压缩ĺŽć–‡ä»¶ĺ¤§ĺ°Źĺ¤§äşŽĺŽźĺ§‹ć–‡ä»¶ďĽŚĺż˝ç•Ąäżťĺ­ + + + + Don't delete if input extension is different from output one + + + + + Optimize PNG files during compression + + + + + Level: + + + + + + Medium (Average) + + + + + OK + 确定 + + + + Cancel + ĺŹ–ć¶ + + + + Apply + + + + + Information + äżˇćŻ + + + + You need to restart the application before +changes take effect + 程式必须重ĺŻć‰Ťč˝ä˝żč®ľç˝®ĺŹć›´ç”źć• + + + + Soft (Fastest) + + + + + Hard (Slowest) + + + + + Select default output directory + 请选择é»č®¤äżťĺ­ć–‡ä»¶ĺ¤ąä˝Ťç˝® + + + + QDropTreeWidget + + + Clear list + 清除ĺ—表 + + + + Preview + é˘„č§ + + + + Remove item + ĺ é™¤é€‰éˇą + + + + Add pictures... + 添加图ĺŹ... + + + + Open folder... + 打开文件夹... + + + + Open destination folder + 打开保ĺ­ć–‡ä»¶ĺ¤ą + + + + Open input folder + 打开来ćşć–‡ä»¶ĺ¤ą + + + + Remove from list and Hard Disk + 在ĺ—表和硬ç›ä¸­ĺ é™¤ + + + + Updater + + + Caesium updater + Caesium 更新器 + + + + Your version is + ä˝ çš„ç‰ćś¬ä¸ş + + + + Checking version... + 检查ç‰ćś¬ä¸­... + + + + Start + 开始 + + + + Close + ĺ…łé—­ + + + + Caesium current version is: + Caesium 最新ç‰ćś¬ä¸şďĽš + + + + + + ERROR: Connection timed out... + 错误: 连接超时... + + + + + + An error occurred. Please check your internet connection. + 发生错误。 请检查你的网络连接状况。 + + + + Contacting server... + 正在连接服务器... + + + + Downloading + 下载中 + + + + Download completed. + 下载完毕。 + + + + Information + äżˇćŻ + + + + Caesium will exit now in order to allow the update to run + Caesium 将退出以便执行更新 + + + diff --git a/caesium_de.ts b/caesium_de.ts new file mode 100644 index 0000000..c2bd7c6 --- /dev/null +++ b/caesium_de.ts @@ -0,0 +1,1359 @@ + + + + + AboutDialog + + + About + Ăśber + + + + Information + Informationen + + + + Thanks + Danksagung + + + + License + Lizenz + + + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + + + + Close + SchlieĂźen + + + + Name: + Name: + + + + Version: + Version: + + + + Author: + Autor: + + + + Website: + Website: + Webseite: + + + + Translations: + Ăśbersetzungen: + + + + For Metatag manipulation + FĂĽr die Metatag-Bearbeitung + + + + Base of the icon set + Basis der Symboleinstellung + + + + Caesium + + + Caesium - Image Compressor + Caesium - Bildkomprimierer + + + + Name + Name + + + + Size + Größe + + + + New Size + Neue Größe + + + + Ratio + Verhältnis + + + + Quality + Qualität + + + + Resolution + Auflösung + + + + New Resolution + Neue Auflösung + + + + Full Path + Vollständiger Pfad + + + + Add + HinzufĂĽgen + + + + Remove + Entfernen + + + + + Preview + Vorschau + + + + A new version is available! + Eine neue Version ist verfĂĽgbar! + + + + Compression Options + Komprimieroptionen + + + + Quality: + Qualität: + + + Same Quality For All + Gleiche Qualität fĂĽr alle + + + + Set Quality + Qualität festlegen + + + + Format: + Format: + + + + JPG + JPG + + + + PNG + PNG + + + + BMP + BMP + + + + Resize + Größe ändern + + + + Absolute + Absolut + + + + Percentage + Prozentsatz + + + + Height: + Höhe: + + + + + Same for all + Auf alle anwenden + + + + Input + Eingabe + + + + Apply + Ăśbernehmen + + + + Width: + Breite: + + + + Keep Aspect Ratio + Seitenverhältnis beibehalten + + + + Do not enlarge images + Bilder nicht vergrößern + + + + Output Folder + Ausgabeverzeichnis + + + + Choose and output folder... + Ein Ausgabeverzeichnis wählen... + + + + ... + ... + + + Remember Last Folder + Merke letzten Ordner + + + Same Folder as Input + Gleicher Ordner wie Eingang + + + + Keep Structure + Struktur beibehalten + + + + Remember last folder + Letztes Verzeichnis merken + + + + Same folder as input + Gleiches Verzeichnis wie Eingabe + + + + Suffix: + Suffix: + + + + Not allowed! + Nicht möglich! + + + + Waiting... + Bitte warten... + + + + + Cancel + Abbrechen + + + + The original files will be deleted! + Die Originaldateien werden gelöscht! + + + + Original Image + Originalbild + + + + Compressed Image + Komprimiertes Bild + + + + Auto preview + Automatische Vorschau + + + + File + Datei + + + + Edit + Bearbeiten + + + + Action + AusfĂĽhren + + + + View + Ansicht + + + + Toolbar Icon Size + Größe des Icons in der Werkzeugleiste + + + + Help + Hilfe + + + + Tools + Werkzeuge + + + + Add Pictures... + Bilder hinzufĂĽgen... + + + + Ctrl+O + Strg+O + + + + Open List... + Liste öffnen... + + + + Ctrl+L + Strg+L + + + + Save List As... + Liste speichern als... + + + + Ctrl+S + Strg+S + + + + Exit + Beenden + + + + Ctrl+Q + Strg+Q + + + + Remove Item + Objekt entfernen + + + + Del + Entf + + + + Clear List + Liste leeren + + + + Ctrl+Del + Strg+Entf + + + + Ctrl+P + Strg+P + + + + Minimize to tray + In der Schnellstartleiste minimieren + + + + Minimize the application to system tray + Im Infobereich minimieren + + + + Ctrl+Alt+Q + Strg+Alt+Q + + + + + Compress! + Komprimieren! + + + Return + ZurĂĽck + + + + Online Support + Online Support + + + + Website + Webseite + + + + Ctrl+W + Strg+W + + + + Check for Updates + Auf Updates ĂĽberprĂĽfen + + + + Donate to Caesium + Caesium unterstĂĽtzen + + + + About + Ăśber + + + + + About Qt + Ăśber Qt + + + + Show Toolbar + Werkzeugleiste anzeigen + + + + Settings + Einstellungen + + + + Open Folder... + Verzeichnis öffnen... + + + + Ctrl+Shift+O + Strg+Umschalt+O + + + + Remove Item From List and Hard Disk + Objekt von der Liste und Festplatte entfernen + + + + Ctrl+Shift+D + Strg+Umschalt+D + + + + 32x32 + 32x32 + + + + 24x24 + 24x24 + + + + Save Profile... + Profil speichern... + + + + Load Profile... + Profil laden... + + + + Save List + Liste speichern + + + + Select file(s) + Datei(en) auswählen + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + UnterstĂĽtzte Bildformate: BMP, JPG, JPEG, PNG, PPM, TIF, TIFF, XBM, XPM + + + + Compression finished! +- + Kompression abgeschlossen! +- + + + + compressed +- + Komprimiert +- + + + + skipped +- + Ăśbersprungen + - + + + + Item count: + Zahl der Objekte: + + + + Open Directory + Verzeichnis öffnen + + + + Select output directory + Ausgabeverzeichnis auswählen + + + + I can't set the quality! + Die Qualität konnte nicht eingestellt werden! + + + + Info + Info + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG und BMP sind verlustfreie Formate und +können nicht wie JPG komprimiert werden. +Cäsium wird die Qualität fĂĽr diese Formate +automatisch festlegen. + + + + + Save as... + Speichern als... + + + + + Caesium List (*.clf) + Caesium Liste(*.clf) + + + + Open a list file... + Dateiliste öffnen... + + + About Qt4 + Ăśber Qt4 + + + + + + + Error + Fehler + + + + Failed to create the directory. +Aborting. + Das Verzeichnis konnte nicht erstellt werden. +Abbruch. + + + + The list is empty! Fill it! + Die Liste ist leer! + + + + Set an Output Directory first! + Zuerst ein Ausgabeverzeichnis wählen! + + + + Deleting original files... + Originaldateien löschen... + + + + Compression done! + Komprimierung abgeschlossen! + + + Compression Completed with: +» + Komprimierung erfolgreich mit: +» + + + compressed +» + komprimiert +» + + + skipped +» + ĂĽbersprungen +» + + + + error(s) +Time elapsed: + Fehler +Verstrichene Zeit: + + + + +Saved space: + +Gesparter Speicherplatz: + + + + Processing: + Verarbeitung: + + + + - Caesium - Image Compressor + - Caesium - Bildkomprimierer + + + + + Warning + Warnung + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Dieser Vorgang löscht die ausgewählten Dateien UNWIDERRUFLICH. +Sind Sie sicher, daĂź Sie fortfahren wollen? + + + + + Yes + Ja + + + + No + Nein + + + + The output folder doesn't exists. +Do you want to create it? + Das Ausgabeverzeichnis existiert nicht. +Wollen Sie es erstellen? + + + + + Caesium Profile (*.cpf) + Caesium Profil (*.cpf) + + + + Select a profile file... + Ein Profil auswählen... + + + + Restore + Wiederherstellen + + + + Close + SchlieĂźen + + + + Failed to create the directory structure. + Die Verzeichnisstruktur konnte nicht erstellt werden. + + + + Exit + + + Are you sure? + Sind Sie sicher? + + + + Do you really want to exit Caesium? + Wollen Sie Caesium wirklich beenden? + + + + Always check + Immer prĂĽfen + + + + Yes + Ja + + + + No + Nein + + + + Preferences + + + Preferences + Voreinstellungen + + + + General + Allgemein + + + + Default Path + Standardverzeichnis + + + + Use a default output directory if none is specified + Das Standard-Ausgabeverzeichnis verwenden, wenn keines festgelegt ist + + + + ... + ... + + + + Default Image View + Standard-Bildanzeige + + + + Original Size + Originalgröße + + + buttonGroup + SchaltflächenGruppe + + + + Fit Window + Fenster anpassen + + + + Scan subdirectories when you open a folder + Beim Ă–ffnen eines Verzeichnisses Unterverzeichnisse durchsuchen + + + + Load the last used profile at startup + Beim Start das zuletzt verwendete Profil laden + + + + Prompt before exit + Fragen vor Beenden + + + + Check for updates at startup + Check for uptades at startup + Beim Start auf Updates prĂĽfen + + + + Compression + Komprimierung + + + + Keep EXIF Information while compressing + EXIF-Daten beibehalten + + + Don't compress if the output size is greater than the original + Nicht komprimieren, wenn die Ausgabe größer ist als das Original + + + + Delete the original file from disk + Originaldatei von der Festplatte löschen + + + + Keep the original Date Information + Original-Datumsinformationen behalten + + + + + Language + Sprache + + + + Restore last used list at startup + Beim Start zuletzt verwendete Liste wiederherstellen + + + + Restore window size and layout at startup + Beim Start Fenstergröße und -ansicht wiederherstellen + + + + Style + Erscheinungsbild + + + + WindowsXP + Windows XP + + + + Skip if the output size is greater than the original + Ăśberspringen, wenn Ausgabedatei größer als Original + + + + Don't delete if input extension is different from output one + Nicht löschen, wenn Eingabe- und Ausgabeformat unterschiedlich + + + + Optimize PNG files during compression + PNG-Dateien während der Komprimierung optimieren + + + + Level: + Stufe: + + + + + Medium (Average) + Mittel (Durchschnitt) + + + + OK + OK + + + + Cancel + Abbrechen + + + + Apply + Ăśbernehmen + + + + Information + Information + + + + You need to restart the application before +changes take effect + Sie mĂĽssen Caesium neu starten, +damit die Ă„nderung wirksam wird + + + + Soft (Fastest) + Weich (am schnellsten) + + + + Hard (Slowest) + Hart (am langsamsten) + + + + Select default output directory + Standard-Ausgabeverzeichnis wählen + + + + QDropTreeWidget + + + Clear list + Liste löschen + + + + Preview + Vorschau + + + + Remove item + Objekt entfernen + + + + Add pictures... + Bilder hinzufĂĽgen... + + + + Open folder... + Verzeichnisr öffnen... + + + + Open destination folder + Zielverzeichnis öffnen + + + + Open input folder + Eingabeverzeichnis öffnen + + + + Remove from list and Hard Disk + Von Liste und Festplatte löschen + + + + Updater + + + Caesium updater + Caesium Updater + + + + Your version is + Ihre Version ist + + + + Checking version... + Version prĂĽfen... + + + + Start + Start + + + + Close + SchlieĂźen + + + + Caesium current version is: + Die aktuelle Caesium-Version ist: + + + + + + ERROR: Connection timed out... + FEHLER: Verbindungsabbruch... + + + + + + An error occurred. Please check your internet connection. + Ein Fehler ist aufgetreten. Bitte prĂĽfen Sie Ihre Internetverbindung. + + + + Contacting server... + Mit Server verbinden... + + + + Downloading + Herunterladen + + + + Download completed. + Herunterladen abgeschlossen. + + + + Information + Informationen + + + + Caesium will exit now in order to allow the update to run + Caesium wird jetzt beendet, um die Updates auszufĂĽhren + + + diff --git a/caesium_en.ts b/caesium_en.ts new file mode 100644 index 0000000..412ffd6 --- /dev/null +++ b/caesium_en.ts @@ -0,0 +1,1015 @@ + + + + + AboutDialog + + + About + + + + + Information + + + + + Thanks + + + + + License + + + + + Close + + + + + Name: + + + + + Version: + + + + + Author: + + + + + Website: + Website: + + + + + Translations: + + + + + For Metatag manipulation + + + + + Base of the icon set + + + + + Caesium + + + Caesium - Image Compressor + + + + + Name + + + + + Size + + + + + New Size + + + + + Ratio + + + + + Quality + + + + + Resolution + + + + + Full Path + + + + + Add + + + + + Remove + + + + + + Preview + + + + + A new version is available! + + + + + Compression Options + + + + + Quality: + + + + + Set Quality + + + + + Format: + + + + + JPG + + + + + PNG + + + + + BMP + + + + + Resize + + + + + Absolute + + + + + Percentage + + + + + Height: + + + + + Input + + + + + Width: + + + + + Keep Aspect Ratio + + + + + Do not enlarge images + + + + + Output Folder + + + + + ... + + + + + Suffix: + + + + + Not allowed! + + + + + Waiting... + + + + + + Cancel + + + + + The original files will be deleted! + + + + + Original Image + + + + + Compressed Image + + + + + Auto preview + + + + + File + + + + + Edit + + + + + Action + + + + + View + + + + + Toolbar Icon Size + + + + + Help + + + + + Tools + + + + + Add Pictures... + + + + + Ctrl+O + + + + + Open List... + + + + + Ctrl+L + + + + + Save List As... + + + + + Ctrl+S + + + + + Exit + + + + + Ctrl+Q + + + + + Remove Item + + + + + Del + + + + + Clear List + + + + + Ctrl+Del + + + + + Ctrl+P + + + + + Minimize to tray + + + + + Minimize the application to system tray + + + + + Ctrl+Alt+Q + + + + + + Compress! + + + + + New Resolution + + + + + + Same for all + + + + + Apply + + + + + Choose and output folder... + + + + + Keep Structure + + + + + Remember last folder + + + + + Same folder as input + + + + + Online Support + + + + + Website + + + + + Ctrl+W + + + + + Check for Updates + + + + + Donate to Caesium + + + + + About + + + + + + About Qt + + + + + Show Toolbar + + + + + Settings + + + + + Open Folder... + + + + + Ctrl+Shift+O + + + + + Remove Item From List and Hard Disk + + + + + Ctrl+Shift+D + + + + + 32x32 + + + + + 24x24 + + + + + Save Profile... + + + + + Load Profile... + + + + + Save List + + + + + Select file(s) + + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + + + + + Compression finished! +- + + + + + compressed +- + + + + + skipped +- + + + + + Item count: + + + + + Open Directory + + + + + Select output directory + + + + + I can't set the quality! + + + + + Info + + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + + + + + + Save as... + + + + + + Caesium List (*.clf) + + + + + Open a list file... + + + + + + + + Error + + + + + Failed to create the directory. +Aborting. + + + + + The list is empty! Fill it! + + + + + Set an Output Directory first! + + + + + Deleting original files... + + + + + Compression done! + + + + + error(s) +Time elapsed: + + + + + +Saved space: + + + + + Processing: + + + + + - Caesium - Image Compressor + + + + + + Warning + + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + + + + + + Yes + + + + + No + + + + + The output folder doesn't exists. +Do you want to create it? + + + + + + Caesium Profile (*.cpf) + + + + + Select a profile file... + + + + + Restore + + + + + Close + + + + + Failed to create the directory structure. + + + + + Exit + + + Are you sure? + + + + + Do you really want to exit Caesium? + + + + + Always check + + + + + Yes + + + + + No + + + + + Preferences + + + Preferences + + + + + General + + + + + Default Path + + + + + Use a default output directory if none is specified + + + + + ... + + + + + Default Image View + + + + + Original Size + + + + + Fit Window + + + + + Scan subdirectories when you open a folder + + + + + Load the last used profile at startup + + + + + Prompt before exit + + + + + Check for updates at startup + Check for uptades at startup + + + + + Compression + + + + + Keep EXIF Information while compressing + + + + + Delete the original file from disk + + + + + Keep the original Date Information + + + + + + Language + + + + + Restore last used list at startup + + + + + Restore window size and layout at startup + + + + + Style + + + + + WindowsXP + + + + + Skip if the output size is greater than the original + + + + + Don't delete if input extension is different from output one + + + + + Optimize PNG files during compression + + + + + Level: + + + + + + Medium (Average) + + + + + OK + + + + + Cancel + + + + + Apply + + + + + Information + + + + + You need to restart the application before +changes take effect + + + + + Soft (Fastest) + + + + + Hard (Slowest) + + + + + Select default output directory + + + + + QDropTreeWidget + + + Clear list + + + + + Preview + + + + + Remove item + + + + + Add pictures... + + + + + Open folder... + + + + + Open destination folder + + + + + Open input folder + + + + + Remove from list and Hard Disk + + + + + Updater + + + Caesium updater + + + + + Your version is + + + + + Checking version... + + + + + Start + + + + + Close + + + + + Caesium current version is: + + + + + + + ERROR: Connection timed out... + + + + + + + An error occurred. Please check your internet connection. + + + + + Contacting server... + + + + + Downloading + + + + + Download completed. + + + + + Information + + + + + Caesium will exit now in order to allow the update to run + + + + diff --git a/caesium_es.ts b/caesium_es.ts new file mode 100644 index 0000000..0f8f148 --- /dev/null +++ b/caesium_es.ts @@ -0,0 +1,1104 @@ + + + + + AboutDialog + + + About + Acerca de + + + + Information + InformaciĂłn + + + + Thanks + Gracias + + + + License + Licencia + + + + Close + Cerrar + + + + Name: + Nombre: + + + + Version: + VersiĂłn: + + + + Author: + Autor: + + + + Website: + Website: + Sitio Web: + + + + Translations: + Traducciones: + + + + For Metatag manipulation + Para manipulaciĂłn de meta-etiquetas + + + + Base of the icon set + Base del set de iconos + + + + Caesium + + + Caesium - Image Compressor + Caesium Compresor de imágenes + + + + Name + Nombre + + + + Size + Tamaño + + + + New Size + Nuevo tamaño + + + + Ratio + RelaciĂłn + + + + Quality + Calidad + + + + Resolution + ResoluciĂłn + + + + New Resolution + Nueva resoluciĂłn + + + + Full Path + Ruta completa + + + + Add + Añadir + + + + Remove + Quitar + + + + + Preview + Previsualizar + + + + A new version is available! + ¡Está disponible una nueva versiĂłn! + + + + Compression Options + Opciones de compresiĂłn + + + + Quality: + Calidad: + + + Same Quality For All + Misma calidad para todos + + + + Set Quality + Fijar Calidad + + + + Format: + Formato: + + + + JPG + JPG + + + + PNG + PNG + + + + BMP + BMP + + + + Resize + Cambiar tamaño + + + Method: + MĂ©todo: + + + + Absolute + Absoluto + + + + Percentage + Porcentaje + + + + Height: + Altura: + + + px + px + + + + Width: + Ancho: + + + + Keep Aspect Ratio + Mantener RelaciĂłn de Aspecto + + + + Do not enlarge images + No ampliar las imágenes + + + + Output Folder + Carpeta de salida + + + + ... + ... + + + Remember Last Folder + Recordar la Ăşltima carpeta + + + Same Folder as Input + Misma carpeta que la entrada + + + + + Same for all + Igual para todos + + + + Input + Entrada + + + + Apply + Aplicar + + + + Choose and output folder... + Seleccionar una carpeta de salida... + + + + Keep Structure + Mantener estructura + + + + Remember last folder + Recordar Ăşltima carpeta + + + + Same folder as input + Misma carpeta que la entrada + + + + Suffix: + Sufijo: + + + + Not allowed! + ¡No permitido! + + + + Waiting... + Esperando... + + + + + Cancel + Cancelar + + + + The original files will be deleted! + ¡Los archivos originales serán borrados! + + + + Original Image + Imagen Original + + + + Compressed Image + Imagen Comprimida + + + + Auto preview + AutoprevisualizaciĂłn + + + + File + Archivo + + + + Edit + Editar + + + + Action + AcciĂłn + + + + View + Vista + + + + Toolbar Icon Size + Tamaño de la barra de iconos + + + + Help + Ayuda + + + + Tools + Herramientas + + + + Add Pictures... + Añadir imágenes... + + + + Ctrl+O + Ctrl+O + + + + Open List... + Abrir lista... + + + + Ctrl+L + Ctrl+L + + + + Save List As... + Guardar lista como... + + + + Ctrl+S + Ctrl+S + + + + Exit + Salir + + + + Ctrl+Q + Ctrl+Q + + + + Remove Item + Borrar elemento + + + + Del + Borrar + + + + Clear List + Limpiar lista + + + + Ctrl+Del + Ctrl+Supr + + + + Ctrl+P + Ctrl+P + + + + Minimize to tray + Minimizar a la bandeja + + + + Minimize the application to system tray + Minimizar la aplicaciĂłn a la bandeja del sistema + + + + Ctrl+Alt+Q + Ctrl+Alt+Q + + + + + Compress! + ¡Comprimir! + + + Return + Volver + + + + Online Support + Soporte en lĂ­nea + + + + Website + Sitio Web + + + + Ctrl+W + Ctrl+W + + + + Check for Updates + Comprobar actualizaciones + + + + Donate to Caesium + Donar a Caesium + + + + About + Acerca + + + + + About Qt + Acerca de Qt + + + + Show Toolbar + Mostrar barra de herramientas + + + + Settings + ConfiguraciĂłn + + + + Open Folder... + Abrir carpeta... + + + + Ctrl+Shift+O + Ctrl+Shift+O + + + + Remove Item From List and Hard Disk + Borrar elemento de la lista y disco duro + + + + Ctrl+Shift+D + Ctrl+Shift+D + + + + 32x32 + 32x32 + + + + 24x24 + 24x24 + + + + Save Profile... + Guardar perfil como... + + + + Load Profile... + Cargar perfil... + + + + Save List + Guardar lista + + + + Select file(s) + Seleccionar archivo(s) + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + Imágenes soportadas (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;Archivos PNG (*.png);;Archivos JPEG (*.jpg *.jpeg);;Archivos BMP (*.bmp);;Archivos TIFF (*.tif *.tiff);;Archivos PPM (*.ppm);;Archivos XBM (*.xbm);;Archivos XPM (*.xpm) + + + + Compression finished! +- + ¡CompresiĂłn finalizada! +- + + + + compressed +- + Comprimido +- + + + + skipped +- + Ignorado +- + + + + Item count: + Elemento nĂşmero: + + + + Open Directory + Abrir Directorio + + + + Select output directory + Seleccionar directorio de salida + + + + I can't set the quality! + ¡No puedo establecer la calidad! + + + + Info + Informacion + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG y BMP son formatos sin pĂ©rdida, y +no pueden comprimirse como lo hace JPG. +Caesium establecerá el nivel de calidad automáticamente +para estos formatos. + + + + + Save as... + Guardar como... + + + + + Caesium List (*.clf) + Lista de Caesium (*.clf) + + + + Open a list file... + Abrir un archivo de lista... + + + About Qt4 + Sobre Qt4 + + + + + + + Error + Error + + + + Failed to create the directory. +Aborting. + Fallo al crear el directorio. +Abortando. + + + + The list is empty! Fill it! + ¡La lista está vacĂ­a! ¡LlĂ©nela! + + + + Set an Output Directory first! + ¡Elija un directorio de salida primero! + + + + Deleting original files... + Borrando archivos originales... + + + + Compression done! + ¡CompresiĂłn terminada! + + + Compression Completed with: +» + CompresiĂłn terminada con: +» + + + compressed +» + Comprimido +» + + + skipped +» + Saltado +» + + + + error(s) +Time elapsed: + Error(es) +Tiempo transcurrido: + + + + +Saved space: + +Espacio ahorrado: + + + + Processing: + Procesando: + + + + - Caesium - Image Compressor + - Caesium - Compresor de Imágenes + + + + + Warning + Advertencia + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Esta acciĂłn borrara los archivos seleccionados PERMANENTEMENTE. +ÂżEstas seguro de querer continuar? + + + + + Yes + Si + + + + No + No + + + + The output folder doesn't exists. +Do you want to create it? + La carpeta de salida no existe. +ÂżQuieres crearla? + + + + + Caesium Profile (*.cpf) + Perfil de Caesium (*cpf) + + + + Select a profile file... + Seleccionar un archivo de perfil... + + + + Restore + Restaurar + + + + Close + Cerrar + + + + Failed to create the directory structure. + Fallo al crear la estructura del directorio. + + + + Exit + + + Are you sure? + ÂżEstá seguro? + + + + Do you really want to exit Caesium? + ÂżRealmente desea salir de Caesium? + + + + Always check + Comprobar siempre + + + + Yes + Si + + + + No + No + + + + Preferences + + + Preferences + Preferencias + + + + General + General + + + + Default Path + Ruta predeterminada + + + + Use a default output directory if none is specified + Usar la carpeta de destino predeterminada si ninguna se ha elegido + + + + ... + ... + + + + Default Image View + Vista predeterminada de imagen + + + + Original Size + Tamaño Original + + + buttonGroup + boton de grupo + + + + Fit Window + Ajustar a ventana + + + + Scan subdirectories when you open a folder + Escanear subdirectorios al abrir una carpeta + + + + Load the last used profile at startup + Cargar la Ăşltima configuraciĂłn al iniciar + + + + Prompt before exit + Preguntar antes de salir + + + Check for uptades at startup + Comprobar actualizaciĂłnes al inicio + + + + Compression + CompresiĂłn + + + + Keep EXIF Information while compressing + Mantener la informaciĂłn EXIF al comprimir + + + + Delete the original file from disk + Borrar el archivo original del disco + + + + Keep the original Date Information + Mantener la informaciĂłn original de fecha + + + + + Language + Idioma + + + + Restore last used list at startup + Restuarar la Ăşltima lista usada al iniciar + + + + Check for updates at startup + Comprobar actualizaciones al iniciar + + + + Restore window size and layout at startup + Restaurar tamaño de ventana y diseño al inicio + + + + Style + Estilo + + + Windows + Windows + + + + WindowsXP + Windows XP + + + WindowsVista + WindowsVista + + + Motif + Motif + + + CDE + CDE + + + Plastique + Plástico + + + Cleanlooks + Cleanlooks + + + + Skip if the output size is greater than the original + Ignorar si el tamaño de salida es mayor que el original + + + + Don't delete if input extension is different from output one + No borrar si la extensiĂłn de entrada es diferente que la de salida + + + + Optimize PNG files during compression + Optimizar archivos PNG durante la compresiĂłn + + + + Level: + Nivel: + + + + + Medium (Average) + Medio.(Promedio) + + + + OK + Ok + + + + Cancel + Cancelar + + + + Apply + Aplicar + + + + Information + InformaciĂłn + + + + You need to restart the application before +changes take effect + Necesitas reiniciar la aplicaciĂłn +para que los cambios tengan efecto + + + + Soft (Fastest) + Suave (Rápido) + + + + Hard (Slowest) + Profundo (Lento) + + + + Select default output directory + Selecionar directorio de salida predeterminado + + + + QDropTreeWidget + + + Clear list + Limpiar lista + + + + Preview + Previsualizar + + + + Remove item + Quitar elemento + + + + Add pictures... + Añadir imágenes... + + + + Open folder... + Abrir carpeta... + + + + Open destination folder + Abrir carpeta destino + + + + Open input folder + Abrir carpeta de entrada + + + + Remove from list and Hard Disk + Borrar elemento de la lista y disco duro + + + + Updater + + + Caesium updater + Actualizador de Caesium + + + + Your version is + Tu versiĂłn es + + + + Checking version... + Comprobando versiĂłn... + + + + Start + Empezar + + + + Close + Cerrar + + + + Caesium current version is: + La versiĂłn actual de Caesium es: + + + + + + ERROR: Connection timed out... + ERROR: ConexiĂłn fuera de tiempo... + + + + + + An error occurred. Please check your internet connection. + Ha ocurrido un error. Por favor, compruebe su conexiĂłn a internet. + + + + Contacting server... + Contactando con el servidor... + + + + Downloading + Descargando + + + + Download completed. + Descarga completada. + + + + Information + InformaciĂłn + + + + Caesium will exit now in order to allow the update to run + Caesium se cerrará para permitir la actualizaciĂłn + + + diff --git a/caesium_fr.ts b/caesium_fr.ts new file mode 100644 index 0000000..2c797cb --- /dev/null +++ b/caesium_fr.ts @@ -0,0 +1,1370 @@ + + + + + AboutDialog + + + About + A propos de + + + + Information + Information + + + + Thanks + Remerciements + + + + License + Licence + + + + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + + + + Close + Fermer + + + + Name: + Nom : + + + + Version: + Version : + + + + Author: + Auteur : + + + + Website: + Website: + Site web : + + + + Translations: + Traductions : + + + + For Metatag manipulation + Pour la manipulation de la mĂ©tabalise + + + + Base of the icon set + +Base de l'ensemble des icĂ´nes + + + + Caesium + + + Caesium - Image Compressor + Caesium - Compresseur d'image + + + + Name + Nom + + + + Size + Taille + + + + New Size + Nouvelle taille + + + + Ratio + Ratio + + + + Quality + QualitĂ© + + + + Resolution + RĂ©solution + + + + New Resolution + Nouvelle rĂ©solution + + + + Full Path + Chemin complet + + + + Add + Ajouter + + + + Remove + Supprimer + + + + + Preview + Aperçu + + + + A new version is available! + Une nouvelle version est disponible ! + + + + Compression Options + Options de compression + + + + Quality: + QualitĂ© : + + + Same Quality For All + MĂŞme qualitĂ© pour tout + + + + Set Quality + DĂ©finir qualitĂ© + + + + Format: + Format : + + + + JPG + JPG + + + + PNG + PNG + + + + BMP + BMP + + + + Resize + Redimensionner + + + + Absolute + Absolu + + + + Percentage + Pourcentage + + + + Height: + Hauteur : + + + px + px + + + + + Same for all + Identique pour tous + + + + Input + EntrĂ©e + + + + Apply + Appliquer + + + + Width: + Largeur : + + + + Keep Aspect Ratio + Conserver le ratio + + + + Do not enlarge images + Ne pas Ă©largir les images + + + + Output Folder + Dossier d'enregistrement + + + + Choose and output folder... + Choisir un dossier d'enregistrement... + + + + ... + ... + + + Remember Last Folder + MĂ©moriser le dernier dossier + + + Same Folder as Input + MĂŞme dossier que l'original + + + + Keep Structure + Conserver la structure + + + + Remember last folder + Se souvenir du dernier dossier + + + + Same folder as input + MĂŞme dossier qu'Ă  l'entrĂ©e + + + + Suffix: + Suffixe : + + + + Not allowed! + Non autorisĂ©! + + + + Waiting... + Patientez... + + + + + Cancel + Annuler + + + + The original files will be deleted! + Les fichiers d'origine seront supprimĂ©s ! + + + + Original Image + Image originale + + + + Compressed Image + Image compressĂ©e + + + + Auto preview + Aperçu auto + + + + File + Fichier + + + + Edit + Edition + + + + Action + Action + + + + View + Affichage + + + + Toolbar Icon Size + Taille d'icĂ´ne de barre d'outils + + + + Help + Aide + + + + Tools + Outils + + + + Add Pictures... + Ajouter des images... + + + + Ctrl+O + Ctrl+O + + + + Open List... + Ouvrir la liste... + + + + Ctrl+L + Ctrl+L + + + + Save List As... + Enregistrer la liste sous... + + + + Ctrl+S + Ctrl+S + + + + Exit + Quitter + + + + Ctrl+Q + Ctrl+Q + + + + Remove Item + Supprimer l'Ă©lĂ©ment + + + + Del + Suppr + + + + Clear List + Vider la liste + + + + Ctrl+Del + Ctrl+Suppr + + + + Ctrl+P + Ctrl+P + + + + Minimize to tray + RĂ©duire dans la barre système + + + + Minimize the application to system tray + RĂ©duire l'application dans la barre système + + + + Ctrl+Alt+Q + Ctrl+Alt+Q + + + + + Compress! + Compresser ! + + + Return + Retour + + + + Online Support + Support en ligne + + + + Website + Site web + + + + Ctrl+W + Ctrl+W + + + + Check for Updates + VĂ©rifier les mises Ă  jour + + + + Donate to Caesium + Faire un don Ă  Caesium + + + + About + A propos + + + + + About Qt + A propos de Qt + + + + Show Toolbar + Afficher la barre d'outils + + + + Settings + Paramètres + + + + Open Folder... + Ouvrir le dossier... + + + + Ctrl+Shift+O + Ctrl+Maj+O + + + + Remove Item From List and Hard Disk + Supprimer l'Ă©lĂ©ment de liste et du disque dur + + + + Ctrl+Shift+D + Ctrl+Maj+D + + + + 32x32 + 32x32 + + + 48x48 + 48x48 + + + + 24x24 + 24x24 + + + + Save Profile... + Enregistrer le profil... + + + + Load Profile... + Charger le profil... + + + + Save List + Enregistrer la liste + + + + Select file(s) + SĂ©lectionner le(s) fichier(s) + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + Formats supportĂ©s (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;Fichiers PNG (*.png);;Fichiers JPEG (*.jpg *.jpeg);;Fichiers BMP (*.bmp);;Fichiers TIFF (*.tif *.tiff);;Fichiers PPM (*.ppm);;Fichiers XBM (*.xbm);;Fichiers XPM (*.xpm) + + + + Compression finished! +- + Compression terminĂ©e ! +- + + + + compressed +- + compressĂ© +- + + + + skipped +- + ignorĂ© +- + + + + Item count: + Nombre d'Ă©lĂ©ment : + + + + Open Directory + Ouvrir le rĂ©pertoire + + + + Select output directory + SĂ©lectionner le rĂ©pertoire de sortie + + + + I can't set the quality! + Je ne peux pas dĂ©finir la qualitĂ© ! + + + + Info + Info + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + Le format PNG et BMP sont des formats sans perte, et +ne peuvent ĂŞtre compressĂ©s comme le JPG. +CĂ©sium Ă©tablira automatiquement le niveau de qualitĂ© +pour ces formats. + + + + + Save as... + Enregistrer sous... + + + + + Caesium List (*.clf) + Liste Caesium (*.clf) + + + + Open a list file... + Ouvrir un fichier de la liste... + + + About Qt4 + A propos de Qt4 + + + + + + + Error + Erreur + + + + Failed to create the directory. +Aborting. + Impossible de crĂ©er le rĂ©pertoire. +Abandon. + + + + The list is empty! Fill it! + La liste est vide ! Remplissez-la ! + + + + Set an Output Directory first! + DĂ©finir d'abord un rĂ©pertoire de sortie ! + + + + Deleting original files... + Suppression des fichiers originaux... + + + + Compression done! + Compression effectuĂ©e ! + + + Compression Completed with: +» + Compression terminĂ©e avec : +» + + + compressed +» + compressĂ© +» + + + skipped +» + ignorĂ© +» + + + + error(s) +Time elapsed: + erreur(s) +Temps Ă©coulĂ© : + + + + +Saved space: + +Espace enregistrĂ© : + + + + Processing: + Traitement : + + + + - Caesium - Image Compressor + - Caesium - Compresseur d'image + + + + + Warning + Avertissement + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Cette action supprimera les fichiers sĂ©lectionnĂ©s DEFINITIVEMENT. +ĂŠtes-vous certain de vouloir continuer ? + + + + + Yes + Oui + + + + No + Non + + + + The output folder doesn't exists. +Do you want to create it? + Le dossier de sortie n'existe pas. +Voulez-vous le crĂ©er ? + + + + + Caesium Profile (*.cpf) + Profil Caesium (*.cpf) + + + + Select a profile file... + SĂ©lectionner un fichier de profil... + + + + Restore + Restaurer + + + + Close + Fermer + + + + Failed to create the directory structure. + Impossible de crĂ©er la structure du rĂ©pertoire. + + + + Exit + + + Are you sure? + ĂŠtes-vous sĂ»r ? + + + + Do you really want to exit Caesium? + Voulez-vous rĂ©ellement quitter Caesium ? + + + + Always check + Toujours vĂ©rifier + + + + Yes + Oui + + + + No + Non + + + + Preferences + + + Preferences + PrĂ©fĂ©rences + + + + General + GĂ©nĂ©ral + + + + Default Path + Chein par dĂ©faut + + + + Use a default output directory if none is specified + Utiliser le rĂ©pertoire de sortie par dĂ©faut si aucun n'est spĂ©cifiĂ© + + + + ... + ... + + + + Default Image View + Affichage d'image par dĂ©faut + + + + Original Size + Taille d'origine + + + buttonGroup + Groupe de bouton + + + + Fit Window + Ajuster Ă  la fenĂŞtre + + + + Scan subdirectories when you open a folder + Analyser les sous-rĂ©pertoires lorsque vous ouvrez un dossier + + + + Load the last used profile at startup + Charger au dĂ©marrage le dernier profil utilisĂ© + + + + Prompt before exit + Demander avant de quitter + + + + Check for updates at startup + Check for uptades at startup + VĂ©rifier les mises Ă  jour au dĂ©marrage + + + + Compression + Compression + + + + Keep EXIF Information while compressing + Garder les informations EXIF tout en comprimant + + + Don't compress if the output size is greater than the original + Ne pas compresser si la taille de sortie est supĂ©rieure Ă  l'original + + + + Delete the original file from disk + Supprimer le fichier original du disque + + + + Keep the original Date Information + Garder la date originale + + + + + Language + Langue + + + + Restore last used list at startup + Restaurer la liste des derniers utilisĂ©s au dĂ©marrage + + + + Restore window size and layout at startup + Restaurer la taille et la disposition de la fenĂŞtre au dĂ©marrage + + + + Style + Style + + + + WindowsXP + WindowsXP + + + + Skip if the output size is greater than the original + Passer si la taille de sortie est supĂ©rieure Ă  l'original + + + + Don't delete if input extension is different from output one + Ne supprimez pas si l'extension d'entrĂ©e est diffĂ©rente de la sortie + + + + + Optimize PNG files during compression + Optimiser les fichiers PNG lors de la compression + + + + Level: + Niveau : + + + + + Medium (Average) + Moyen (courant) + + + + OK + OK + + + + Cancel + Annuler + + + + Apply + Appliquer + + + + Information + Information + + + + You need to restart the application before +changes take effect + Vous devez redĂ©marrer l'application pour +que les changements prennent effet + + + + Soft (Fastest) + Doux (plus rapide) + + + + Hard (Slowest) + Dur (plus lent) + + + + Select default output directory + SĂ©lectionner le rĂ©pertoire de sortie par dĂ©faut + + + + QDropTreeWidget + + + Clear list + Vider la liste + + + + Preview + Aperçu + + + + Remove item + Supprimer l'Ă©lĂ©ment + + + + Add pictures... + Ajouter images... + + + + Open folder... + Ouvrir dossier... + + + + Open destination folder + Ouvrir le dossier de sortie + + + + Open input folder + Ouvrir le dossier d'entrĂ©e + + + + Remove from list and Hard Disk + Supprimer de la liste et du disque + + + + Updater + + + Caesium updater + Mise Ă  jour de Caesium + + + + Your version is + Votre version est + + + + Checking version... + VĂ©rification de la version... + + + + Start + DĂ©marrer + + + + Close + Fermer + + + + Caesium current version is: + La version actuelle de Caesium est : + + + + + + ERROR: Connection timed out... + ERREUR : La connexion a expirĂ©... + + + + + + An error occurred. Please check your internet connection. + Une erreur s'est produite. Veuillez vĂ©rifier votre connexion internet. + + + + Contacting server... + Contact avec le serveur... + + + + Downloading + TĂ©lĂ©chargement + + + + Download completed. + TĂ©lĂ©chargement terminĂ©. + + + + Information + Information + + + + Caesium will exit now in order to allow the update to run + Caesium devra se fermer afin de permettre Ă  la mise Ă  jour de s'exĂ©cuter + + + diff --git a/caesium_gr.ts b/caesium_gr.ts new file mode 100644 index 0000000..122ad48 --- /dev/null +++ b/caesium_gr.ts @@ -0,0 +1,844 @@ + + + + + AboutDialog + + About + ΠεĎÎŻ + + + Close + ΚλείĎιμο + + + Name: + Όνομα: + + + License + Άδεια χĎήĎης + + + Translations: + ΜεταφĎάĎεις: + + + For Metatag manipulation + Για Ď„Îż χειĎÎąĎÎĽĎŚ των Metatag + + + Thanks + ΕυχαĎÎąĎτίες + + + Base of the icon set + Για τη βάĎη της Ďυλλογής εικονιδίων + + + Author: + ΔημιουĎγός: + + + Information + ΠληĎοφοĎίες + + + Website: + ΙĎτότοπος: + + + Version: + ÎκδοĎη: + + + Website: + ΙĎτότοπος: + + + + Caesium + + No + Όχι + + + px + px + + + ... + ... + + + BMP + BMP + + + Add + ΠĎÎżĎθήκη + + + Del + Del + + + JPG + JPG + + + PNG + PNG + + + Yes + Ναι + + + Edit + ΕπεξεĎγαĎία + + + Exit + Îξοδος + + + File + ΑĎχείο + + + Help + Βοήθεια + + + Info + ΠληĎοφοĎίες + + + Name + Όνομα + + + Size + Μέγεθος + + + View + ΠĎοβολή + + + Caesium Profile (*.cpf) + ΠĎοφίλ του Caesium (*.cpf) + + + 24x24 + 24x24 + + + 32x32 + 32x32 + + + About + ΠεĎÎŻ... + + + Apply + ΕφαĎμογή + + + Close + ΚλείĎιμο + + + Error + Σφάλμα + + + Input + ΕιĎόδου + + + Ratio + Αναλογία + + + Tools + ΕĎγαλεία + + + Save Profile... + ΑποθήκευĎη Ď€Ďοφίλ... + + + Compression Completed with: +» + Η ĎυμπίεĎη ολοκληĎώθηκε με: +» + + + Show Toolbar + ΕμφάνιĎη εĎγαλειοθήκης + + + Select file(s) + Επιλέξτε αĎχείο(α) + + + compressed +» + ĎυμπιεĎμένο(α) +» + + + Check for Updates + Îλεγχος για ενημεĎĎŽĎεις + + + Compressed Image + ΣυμπιεĎμένη εικόνα + + + Output Folder + Φάκελος εξαγωγής + + + Keep Structure + ΔιατήĎηĎη δομής + + + Keep Aspect Ratio + ΔιατήĎηĎη αναλογίας + + + Do not enlarge images + Όχι μεγέθυνĎη εικόνων + + + error(s) +Time elapsed: + Ďφάλμα(τα) +ΧĎόνος που πέĎαĎε: + + + Full Path + ΠλήĎης διαδĎομή + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + Οι ÎĽÎżĎφές PNG και BMP είναι μη απωλεĎτικές, +και δεν μποĎεί να ĎυμπιεĎτούν όπως η JPG. +Το Caesium θα ÎżĎÎŻĎει αυτόματα Ď„Îż επίπεδο +ποιότητας γι αυτές τις ÎĽÎżĎφές. + + + Auto preview + Αυτόμ. Ď€ĎοεπιĎκόπηĎη + + + A new version is available! + Μια νέα έκδοĎη είναι διαθέĎιμη! + + + Donate to Caesium + ΔωĎεά ĎĎ„Îż Caesium + + + +Saved space: + +ΕξοικονόμηĎη χώĎου: + + + Open Folder... + Άνοιγμα φακέλου... + + + Compress! + ΣυμπίεĎη! + + + Action + ΔĎάĎη + + + Cancel + ΆκυĎÎż + + + Failed to create the directory structure. + Απέτυχε η δημιουĎγία της δομής του καταλόγου. + + + Ctrl+L + Ctrl+L + + + Ctrl+O + Ctrl+O + + + Ctrl+P + Ctrl+P + + + Ctrl+Q + Ctrl+Q + + + Ctrl+S + Ctrl+S + + + Ctrl+W + Ctrl+W + + + Set an Output Directory first! + ΚαθοĎÎŻĎτε Ď€Ďώτα ένα φάκελο εξαγωγής! + + + Deleting original files... + ΔιαγĎαφή Ď€Ďωτότυπων αĎχείων... + + + Select output directory + Επιλέξτε κατάλογο εξαγωγής + + + Remove + ΚατάĎγηĎη + + + Resize + Αλλαγή μεγέθους + + + Minimize the application to system tray + ΕλαχιĎτοποίηĎη της εφαĎμογής Ďτην πεĎιοχή ειδοποιήĎεων + + + Width: + Πλάτος: + + + I can't set the quality! + Δεν μποĎεί να ÎżĎÎąĎτεί η ποιότητα! + + + Resolution + ΑνάλυĎη + + + Compression Options + Επιλογές ĎυμπίεĎης + + + Original Image + ΑĎχική εικόνα + + + About Qt4 + ΠεĎÎŻ Qt4 + + + skipped +» + αγνοημένο(α) +» + + + Save as... + ΑποθήκευĎη ως... + + + Choose and output folder... + Επιλέξτε φάκελο εξαγωγής... + + + Preview + ΠĎοεπιĎκόπηĎη + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + ΥποĎτηĎιζόμενες εικόνες (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;ΑĎχεία PNG (*.png);;ΑĎχεία JPEG (*.jpg *.jpeg);;ΑĎχεία BMP (*.bmp);;ΑĎχεία TIFF (*.tif *.tiff);;ΑĎχεία PPM (*.ppm);;ΑĎχεία XBM (*.xbm);;ΑĎχεία XPM (*.xpm) + + + Clear List + Απαλοιφή λίĎτας + + + Open List... + Άνοιγμα λίĎτας... + + + Remove Item From List and Hard Disk + ΚατάĎγηĎη Ďτοιχείου από τη λίĎτα και Ď„Îż ĎκληĎĎŚ δίĎκο + + + Not allowed! + Δεν επιτĎέπεται! + + + Quality + Ποιότητα + + + Restore + ΕπαναφοĎά + + + Compression done! + Η ĎυμπίεĎη ολοκληĎώθηκε! + + + Set Quality + ΡύθμιĎη ποιότητας + + + The original files will be deleted! + Τα Ď€Ďωτότυπα αĎχεία θα διαγĎαφούν! + + + About Qt + ΠεĎÎŻ Qt + + + Failed to create the directory. +Aborting. + Η δημιουĎγία του φακέλου απέτυχε. ΜαταίωĎη. + + + Absolute + Απόλυτα + + + Percentage + Αναλογικά + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Αυτή η ενέĎγεια θα διαγĎάĎει τα επιλεγμένα αĎχεία ΟΡΙΣΤΙΚΑ. +ΕίĎτε βέβαιος ĎŚĎ„Îą θέλετε να ĎυνεχίĎετε; + + + Save List As... + ΑποθήκευĎη λίĎτας ως... + + + New Resolution + Νέα ανάλυĎη + + + Suffix: + Επίθημα: + + + Select a profile file... + Επιλέξτε ένα αĎχείο Ď€Ďοφίλ... + + + Add Pictures... + ΠĎÎżĎθήκη εικόνων... + + + Same for all + Ίδια για όλες + + + Waiting... + Αναμονή... + + + The output folder doesn't exists. +Do you want to create it? + Îź φάκελος εξαγωγής δεν υπάĎχει. +Îέλετε να δημιουĎγηθεί; + + + Minimize to tray + ΕλαχιĎτοποίηĎη Ďτην πεĎιοχή ειδοποιήĎεων + + + Quality: + Ποιότητα: + + + Ctrl+Del + Ctrl+Del + + + Load Profile... + ΦόĎτωĎη Ď€Ďοφίλ... + + + The list is empty! Fill it! + Η λίĎτα είναι κενή! ΣυμπληĎĎŽĎτε την. + + + Remove Item + ΚατάĎγηĎη Ďτοιχείου + + + Save List + ΑποθήκευĎη λίĎτας + + + New Size + Νέο μέγεθος + + + Settings + ΡυθμίĎεις + + + Ctrl+Shift+D + Ctrl+Shift+D + + + Ctrl+Shift+O + Ctrl+Shift+O + + + Item count: + Πλήθος Ďτοιχείων: + + + Format: + ΜοĎφή: + + + Warning + ΠĎοειδοποίηĎη + + + Website + ΙĎτότοπος + + + Open a list file... + Άνοιγμα ενός αĎχείου λίĎτας... + + + Caesium List (*.clf) + ΛίĎτα Caesium (*.clf) + + + Open Directory + Άνοιγμα καταλόγου + + + Remember last folder + Απομνημ. τελευταίου φακέλου + + + Height: + ÎŽĎος: + + + Toolbar Icon Size + Μέγεθος εικονιδίων εĎγαλειοθήκης + + + Ctrl+Alt+Q + Ctrl+Alt+Q + + + Caesium - Image Compressor + Caesium - ΣυμπιεĎτής εικόνας + + + - Caesium - Image Compressor + - Caesium - ΣυμπιεĎτής εικόνας + + + Same folder as input + ίδιος φάκελος με ειĎαγωγή + + + Online Support + ΆμεĎη υποĎτήĎιξη + + + Compression finished! +- + Η ĎυμπίεĎη ολοκληĎώθηκε! +- + + + compressed +- + ĎυμπιεĎμένo +- + + + skipped +- + αγνοημένο(α) +- + + + Processing: + ΕπεξεĎγαĎία: + + + + Exit + + No + Όχι + + + Yes + Ναι + + + Always check + Îλεγχος πάντα + + + Do you really want to exit Caesium? + Îέλετε Ď€Ďαγματικά να βγείτε από Ď„Îż Caesium; + + + Are you sure? + ΕίĎτε βέβαιος; + + + + Preferences + + OK + Εντάξει + + + ... + ... + + + Apply + ΕφαĎμογή + + + Style + Στυλ + + + Original Size + ΑĎχικό μέγεθος + + + Keep EXIF Information while compressing + ΔιατήĎηĎη πληĎοφοĎιών EXIF κατά τη ĎυμπίεĎη + + + Restore window size and layout at startup + ΕπαναφοĎά μεγέθους παĎαθύĎου και διάταξης Ďτην εκκίνηĎη + + + Select default output directory + Επιλέξτε τον Ď€Ďοεπιλεγμένο κατάλογο εξαγωγής + + + Cancel + ΆκυĎÎż + + + WindowsXP + WindowsXP + + + Load the last used profile at startup + ΦόĎτωĎη του Ď€ĎĎŚĎφατα χĎηĎιμοποιημένου Ď€Ďοφίλ Ďτην έναĎξη + + + Fit Window + ΠĎÎżĎαĎμογή ĎĎ„Îż παĎάθυĎÎż + + + Use a default output directory if none is specified + ΧĎήĎη Ď€Ďοεπιλεγμένης διαδĎομής εάν δεν έχει ÎżĎÎąĎτεί + + + You need to restart the application before +changes take effect + ΠĎέπει να κάνετε επανεκκίνηĎη της εφαĎμογής +για να τεθούν Ďε ÎąĎχύ οι αλλαγές + + + Default Path + ΠĎοεπιλεγμένη διαδĎομή + + + Scan subdirectories when you open a folder + ΣάĎωĎη υποφακέλων όταν ανοίγετε ένα φάκελο + + + Language + ΓλώĎĎα + + + Compression + ΣυμπίεĎη + + + Check for updates at startup + Îλεγχος για ενημεĎĎŽĎεις Ďτην έναĎξη + + + Don't delete if input extension is different from output one + Να μη διαγĎαφεί, αν η επέκταĎη ειĎόδου είναι διαφοĎετική + από αυτή της εξόδου + + + Information + ΠληĎοφοĎίες + + + Default Image View + ΠĎοεπιλεγμένη Ď€Ďοβολή εικόνας + + + Prompt before exit + ΕĎώτηĎη Ď€Ďιν από την έξοδο + + + Preferences + ΠĎοτιμήĎεις + + + Keep the original Date Information + ΔιατήĎηĎη των αĎχικών πληĎοφοĎιών ημεĎομηνίας + + + General + Γενικά + + + Skip if the output size is greater than the original + ΠαĎάλειĎη αν Ď„Îż μέγεθος εξαγωγής είναι μεγαλύτεĎÎż από Ď„Îż αĎχικό + + + Delete the original file from disk + ΔιαγĎαφή του Ď€Ďωτότυπου αĎχείου από Ď„Îż δίĎκο + + + Optimize PNG files during compression + ΒελτιĎτοποίηĎη αĎχείων PNG κατά τη ĎυμπίεĎη + + + Level: + Επίπεδο: + + + Medium (Average) + ΜέĎη (μέĎος ĎŚĎος) + + + Soft (Fastest) + ΕλαφĎά (ταχύτεĎη) + + + Hard (Slowest) + ΙĎχυĎή (πιο αĎγή) + + + Restore last used list at startup + ΕπαναφοĎά της Ď€ĎĎŚĎφατα χĎηĎιμοποιημένης λίĎτας Ďτην έναĎξη + + + + QDropTreeWidget + + Open input folder + Άνοιγμα φακέλου ειĎαγωγής + + + Open folder... + Άνοιγμα φακέλου... + + + Open destination folder + Άνοιγμα φακέλου Ď€ĎοοĎÎąĎμού + + + Preview + ΠĎοεπιĎκόπηĎη + + + Clear list + Απαλοιφή λίĎτας + + + Add pictures... + ΠĎÎżĎθήκη εικόνων... + + + Remove from list and Hard Disk + ΚατάĎγηĎη από τη λίĎτα και Ď„Îż ĎκληĎĎŚ δίĎκο + + + Remove item + ΚατάĎγηĎη Ďτοιχείου + + + + Updater + + Close + ΚλείĎιμο + + + Start + ÎναĎξη + + + Caesium updater + ΕνημέĎωĎη του Caesium + + + Downloading + ΛήĎη + + + Caesium will exit now in order to allow the update to run + Îα γίνει έξοδος από Ď„Îż Caesium Ď„ĎŽĎα, Ď€Ďοκειμένου να καταĎτεί δυνατή η ενημέĎωĎη + + + ERROR: Connection timed out... + ΣΦΑΛΜΑ: Îληξε Îż χĎόνος αναμονής ĎύνδεĎης... + + + Contacting server... + Επικοινωνία με Ď„Îż διακομιĎτή... + + + Checking version... + Îλεγχος έκδοĎης... + + + Caesium current version is: + Η Ď„ĎέχουĎα έκδοĎη του Caesium είναι: + + + An error occurred. Please check your internet connection. + ΠαĎουĎιάĎτηκε ένα Ďφάλμα. ΠαĎακαλώ ελέγξτε τη ĎύνδεĎή Ďας ĎĎ„Îż διαδίκτυο. + + + Information + ΠληĎοφοĎίες + + + Download completed. + Η λήĎη ολοκληĎώθηκε. + + + Your version is + Η έκδοĎή Ďας είναι η + + + diff --git a/caesium_it.ts b/caesium_it.ts new file mode 100644 index 0000000..85ab54a --- /dev/null +++ b/caesium_it.ts @@ -0,0 +1,1231 @@ + + + + + AboutDialog + + + About + Informazioni su + + + + Information + Informazioni + + + <!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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Name: </span><span style=" font-size:8pt;">Caesium</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Version: </span><span style=" font-size:8pt;">1.0.0</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Author: </span><span style=" font-size:8pt;">Matteo Paonessa</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">eMail: </span><span style=" font-size:8pt;">matteo.paonessa@gmail.com</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600; color:#000000;">Website: </span><span style=" font-size:8pt; color:#000000;">http://caesium.sourceforge.net</span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Name: </span><span style=" font-size:8pt;">Caesium</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Version: </span><span style=" font-size:8pt;">0.9.1</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Author: </span><span style=" font-size:8pt;">Matteo Paonessa</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">eMail: </span><span style=" font-size:8pt;">matteo.paonessa@gmail.com</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600; color:#000000;">Website: </span><span style=" font-size:8pt; color:#000000;">http://caesium.sourceforge.net</span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Nome: </span><span style=" font-size:8pt;">Caesium</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Versione: </span><span style=" font-size:8pt;">0.9.1</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Autore: </span><span style=" font-size:8pt;">Matteo Paonessa</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">eMail: </span><span style=" font-size:8pt;">matteo.paonessa@gmail.com</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600; color:#000000;">Sito Web: </span><span style=" font-size:8pt; color:#000000;">http://caesium.sourceforge.net</span></p></body></html> + + + + Thanks + Ringraziamenti + + + <!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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Pyexiv2 - </span><span style=" font-size:8pt;">http://tilloy.net/dev/pyexiv2/</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For Metatag manipulation</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Tango Desktop Project - </span><span style=" font-size:8pt;">http://tango.freedesktop.org/</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Base of the icon set</span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Pyexiv2</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For Metatag manipulation</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">http://tilloy.net/dev/pyexiv2/</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Tango Desktop Project</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Base of the icon set</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">http://tango.freedesktop.org/</span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Pyexiv2</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Per la manipolazione dei metatag</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">http://tilloy.net/dev/pyexiv2/</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">Tango Desktop Project</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Base del set di icone</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">http://tango.freedesktop.org/</span></p></body></html> + + + <!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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Pyexiv2 - </span><span style=" font-size:8pt;">for Metatag manipulation - http://tilloy.net/dev/pyexiv2/</span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; 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;"><span style=" font-size:8pt; font-weight:600;">Pyexiv2 - </span><span style=" font-size:8pt;">per la manipolazione dei metatag - http://tilloy.net/dev/pyexiv2/</span></p></body></html> + + + + License + Licenza + + + + Close + Chiudi + + + + Name: + Nome: + + + + Version: + Versione: + + + + Author: + Autore: + + + + Website: + Website: + Sito Web: + + + + Translations: + Traduzioni: + + + + For Metatag manipulation + Per la manipolazione dei Metatag + + + + Base of the icon set + Base del set di icone + + + + Caesium + + + Caesium - Image Compressor + Caesium - Compressore di Immagini + + + + Name + Nome + + + + Size + Dimensione + + + + New Size + Nuova Dimensione + + + + Ratio + Rapporto + + + + Quality + QualitĂ  + + + + Resolution + Risoluzione + + + + New Resolution + Nuova Risoluzione + + + + Full Path + Percorso Completo + + + + Add + Aggiungi + + + + Remove + Rimuovi + + + + + Preview + Anteprima + + + + A new version is available! + Una nuova versione è disponibile! + + + + Compression Options + Opzioni di Compressione + + + + Quality: + QualitĂ : + + + Same Quality For All + Stessa QualitĂ  Per Tutti + + + + Set Quality + Imposta + + + + Format: + Formato: + + + + JPG + JPG + + + + PNG + PNG + + + + BMP + BMP + + + + Input + Input + + + + Resize + Ridimensiona + + + + Absolute + Assoluto + + + + Percentage + Percentuale + + + + Height: + Altezza: + + + px + Larghezza + + + + Width: + Larghezza: + + + + Keep Aspect Ratio + Mantieni il Rapporto + + + + Do not enlarge images + Non allargare + + + + Output Folder + Cartella di Output + + + + ... + ... + + + Remember Last Folder + Ricorda l'ultima Cartella + + + Same Folder as Input + Stessa Cartella di Input + + + + Suffix: + Suffisso: + + + + Auto preview + Anteprima automatica + + + + 32x32 + + + + + 24x24 + + + + + Save Profile... + Salva Profilo... + + + + Load Profile... + Apri Profilo... + + + + Minimize to tray + Minimizza in tray + + + + Minimize the application to system tray + Minimizza l'applicazione nella tray + + + + Ctrl+Alt+Q + + + + + Not allowed! + Invalido! + + + + + Same for all + Uguale per tutti + + + + Apply + Applica + + + + Choose and output folder... + Scegli una cartella di destinazione... + + + + Keep Structure + Mantieni la struttura + + + + Remember last folder + Ricorda l'ultima cartella + + + + Same folder as input + Stessa cartella di origine + + + + Waiting... + Attesa... + + + + + Cancel + Annulla + + + + The original files will be deleted! + I file originali saranno eliminati! + + + + Original Image + Immagine Originale + + + + Compressed Image + Immagine Compressa + + + + File + File + + + + Edit + Modifica + + + + Action + Azioni + + + + View + Visualizza + + + + Toolbar Icon Size + Dimensione Icone della Toolbar + + + + Help + Aiuto + + + + Tools + Strumenti + + + Return + Invio + + + + Ctrl+Shift+O + + + + + Remove Item From List and Hard Disk + Rimuovi dalla lista e dall'Hard Disk + + + + Ctrl+Shift+D + + + + + Save List + Salva la Lista + + + Language + Lingua + + + + Add Pictures... + Aggiungi Immagine... + + + + Ctrl+O + + + + + Open List... + Apri Lista... + + + + Ctrl+L + + + + + Save List As... + Salva Lista Come... + + + + Ctrl+S + + + + + Exit + Esci + + + + Ctrl+Q + + + + + Remove Item + Rimuovi Elemento + + + + Del + Canc + + + + Clear List + Pulisci Lista + + + + Ctrl+Del + + + + + Ctrl+P + + + + + + Compress! + Comprimi! + + + English + Inglese + + + Italian + Italiano + + + Japanese + Giapponese + + + Link Image Box View + Collega visualizzazione dei box + + + + Online Support + Supporto Online + + + + Website + Sito Web + + + + Ctrl+W + + + + + Check for Updates + Controlla Aggiornamenti + + + + Donate to Caesium + Dona a Caesium + + + + About + Informazioni su + + + + + About Qt + Informazioni su Qt + + + + Show Toolbar + Mostra Barra degli Strumenti + + + + Settings + Opzioni + + + Show Preview + Mostra Anteprima + + + + Open Folder... + Apri Cartella... + + + Do You really want to exit? + + + Vuoi davvero uscire? + + + + + + Select file(s) + Seleziona file(s) + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + Immagini Supportate (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + + + + Compression finished! +- + Compressione terminata! +- + + + + compressed +- + compressi +- + + + + skipped +- + saltati +- + + + + Item count: + Numero di elementi: + + + + Open Directory + Apri Cartella + + + <b>Caesium - Image Compressor<br>Version: </br> + <b>Caesium - Compressore di Immagini<br>Versione: </br> + + + </b><p>Enhanced Image Compressor<br>Developed by Matteo Paonessa</br><br>Copyright (C) 2010-2011 Matteo Paonessa</br><br></br><br>eMail: <a href=mailto:matteo.paonessa@gmail.com>matteo.paonessa@gmail.com</a></br><br>Web Site: <a href=http://caesium.sourceforge.net>http://caesium.sourceforge.net</a></br></p> + </b><p>Avanzato Compressore di Immagini<br>Realizzato da Matteo Paonessa</br><br>Copyright (C) 2010-2011 Matteo Paonessa</br><br></br><br>eMail: <a href=mailto:matteo.paonessa@gmail.com>matteo.paonessa@gmail.com</a></br><br>Sito Web: <a href=http://caesium.sourceforge.net>http://caesium.sourceforge.net</a></br></p> + + + + Select output directory + Seleziona cartella di destinazione + + + + I can't set the quality! + Non posso impostarla! + + + + Info + Informazioni + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG e BMP sono formati senza perdita +e non possono essere compressi come i JPG. +Caesium imposterĂ  automaticamente la qualitĂ  +per questi formati. + + + + + Save as... + Salva come... + + + + + Caesium List (*.clf) + Lista di elementi (*.clf) + + + + Open a list file... + Apri un file di lista... + + + About Qt4 + Informazioni su Qt4 + + + New version available + Nuova versione disponibile + + + A new version is available! +Would You like to download it? + Una nuova versione è disponibile! +Vuoi scarlicarla? + + + Server not found + Server non trovato + + + An error occurred while connecting to the server. +Please check your internet connection and retry. + Un errore è avvenuto durante la connessione al server. +Controlla la tua connessione a Internet e riprova. + + + No updates found + Nessun aggiornamento trovato + + + Caesium is updated to the latest version! + Caesium e aggiornato all'ultima versione! + + + + + + + Error + Errore + + + + Failed to create the directory. +Aborting. + Errore nella creazione della directory. +Il processo verrĂ  interrotto. + + + + The list is empty! Fill it! + La lista è vuota! Riempila! + + + + Set an Output Directory first! + Prima imposta una cartella di destinazione! + + + + Deleting original files... + Cancellazione file originali... + + + + Compression done! + Compressione completata! + + + Compression Completed with: +» + Compressione completata con: +» + + + compressed +» + compressi +» + + + skipped +» + saltati +» + + + + error(s) +Time elapsed: + errori +Tempo trascorso: + + + + +Saved space: + +Spazio risparmiato: + + + + Processing: + Compressione: + + + + - Caesium - Image Compressor + - Caesium - Compressore di Immagini + + + + + Warning + Attenzione + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Quest'azione eliminerĂ  i file selezionati PERMANENTEMENTE. +Sei sicuro di voler continuare? + + + + + Yes + Sì + + + + No + No + + + + The output folder doesn't exists. +Do you want to create it? + La cartella di output non esiste. +Vuoi crearla? + + + + + Caesium Profile (*.cpf) + Profilo di Caesium (*.cpf) + + + + Select a profile file... + Seleziona un file di profilo... + + + + Restore + Ripristina + + + + Close + Chiudi + + + + Failed to create the directory structure. + Errore nella creazione della struttura delle cartelle. + + + Information + Informazioni + + + You need to restart the application before +changes take effect + You need to restart before the changes take effect + Devi riavviare l'applicazione prima +che i cambiamenti abbiano effetto + + + + Exit + + + Are you sure? + Sei sicuro? + + + + Do you really want to exit Caesium? + Vuoi veramente uscire da Caesium? + + + + Always check + Controlla sempre + + + + Yes + Sì + + + + No + No + + + + Preferences + + + Preferences + Opzioni + + + + General + Generale + + + + Default Path + Cartella predefinita + + + + Use a default output directory if none is specified + Usa una cartella predefinita se nessuna è specificata + + + + ... + ... + + + + Default Image View + Visualizzazione predefinita + + + + Original Size + Dimensione Originale + + + buttonGroup + buttonGroup + + + + Fit Window + Scala alla finestra + + + + Scan subdirectories when you open a folder + Controlla anche le sottocartelle quando apri una directory + + + + Load the last used profile at startup + Carica l'ultimo profilo usato all'avvio + + + + Prompt before exit + Chiedi prima di uscire + + + + Check for updates at startup + Check for uptades at startup + Controlla aggiornamenti all'avvio + + + + Compression + Compressione + + + + Keep EXIF Information while compressing + Conserva gli EXIF durante la compressione + + + Don't compress if the output size is greater than the original + Non comprimere se la dimensione è maggiore dell'originale + + + + Delete the original file from disk + Elimina i file originali dal disco + + + + Keep the original Date Information + Conserva le informazioni sulla Data + + + + + Language + Lingua + + + + Restore last used list at startup + Carica l'ultima lista all'avvio + + + + Restore window size and layout at startup + Ripristina le dimensioni e il layout dell'applicazione allo start + + + + Style + Stile + + + + WindowsXP + + + + + Skip if the output size is greater than the original + Salta se la dimensione di output è superiore all'originale + + + + Don't delete if input extension is different from output one + Non cancellare se l'estensione di input è differente da quella di output + + + + Optimize PNG files during compression + Ottimizza i file PNG durante la compressione + + + + Level: + Livello: + + + + + Medium (Average) + Medio (Normale) + + + + OK + OK + + + + Cancel + Annulla + + + + Apply + Applica + + + + Information + Informazione + Informazioni + + + + You need to restart the application before +changes take effect + Devi riavviare l'applicazione prima +che i cambiamenti abbiano effetto + + + + Soft (Fastest) + Debole (Veloce) + + + + Hard (Slowest) + Forte (Lento) + + + + Select default output directory + Seleziona una cartella predefinita + + + + QDropTreeWidget + + + Clear list + Pulisci la lista + + + + Preview + Anteprima + + + + Remove item + Rimuovi Elemento + + + + Add pictures... + Aggiungi Immagine... + + + + Open folder... + Apri Cartella... + + + + Open destination folder + Apri cartella di destinazione + + + + Open input folder + Apri la cartella di origine + + + + Remove from list and Hard Disk + Rimuovi dalla lista e dall'Hard Disk + + + + Updater + + + Caesium updater + Aggiornamento di Caesium + + + + Your version is + La tua versione è + + + + Checking version... + Controllo versione... + + + + Start + Avvia + + + + Close + Chiudi + + + + Caesium current version is: + La versione attuale di Caesium è: + + + + + + ERROR: Connection timed out... + ERRORE: Connessione scaduta... + + + + + + An error occurred. Please check your internet connection. + Un errore è avvenuto. Controlla la tua connessione a internet. + + + + Contacting server... + Connessione al server... + + + + Downloading + Downloading + + + + Download completed. + Download completato. + + + + Information + Informazioni + + + + Caesium will exit now in order to allow the update to run + Caesium ora si chiuderĂ  per permettere all'aggiornamento di partire + + + diff --git a/caesium_ja.ts b/caesium_ja.ts new file mode 100644 index 0000000..78cc430 --- /dev/null +++ b/caesium_ja.ts @@ -0,0 +1,814 @@ + + + + + AboutDialog + + About + ć…ĺ ± + + + Close + é–‰ăă‚‹ + + + Name: + ĺŤĺ‰Ť: + + + License + ă©ă‚¤ă‚»ăłă‚ą + + + Translations: + 翻訳: + + + For Metatag manipulation + ăˇă‚żă‚żă‚°ă®ĺŹ–り扱ㄠ+ + + Thanks + 謝辞 + + + Base of the icon set + 基本的ăŞă‚˘ă‚¤ă‚łăłă‚»ăă + + + Author: + 作者: + + + Information + イăłă•ă‚©ăˇăĽă‚·ă§ăł + + + Version: + ăăĽă‚¸ă§ăł: + + + Website: + ウェă–サイă: + + + + Caesium + + No + ă„ă„ă + + + ... + ... + + + BMP + BMP + + + Add + 追加 + + + Del + Del + + + JPG + JPG + + + PNG + PNG + + + Yes + ăŻă„ + + + Edit + 編集 + + + Exit + 終了 + + + File + ă•ă‚ˇă‚¤ă« + + + Help + ăă«ă— + + + Info + ć…ĺ ± + + + Name + ĺŤĺ‰Ť + + + Size + サイズ + + + View + 表示 + + + Caesium Profile (*.cpf) + Caesium ă—ă­ă•ă‚ˇă‚¤ă«(*.cpf) + + + 24x24 + 24x24 + + + 32x32 + 32x32 + + + About + ć…ĺ ± + + + Apply + é©ç”¨ + + + Close + é–‰ăă‚‹ + + + Error + 個ă®ă‚¨ă©ăĽ + + + Input + 入力 + + + Ratio + 比率 + + + Tools + ă„ăĽă« + + + Save Profile... + ă—ă­ă•ă‚ˇă‚¤ă«ă‚’äżťĺ­... + + + Show Toolbar + ă„ăĽă«ăăĽă‚’表示 + + + Select file(s) + é¸ćŠžă•ă‚Śăźă•ă‚ˇă‚¤ă« + + + Check for Updates + アăă—ă‡ăĽăă®ç˘şčŞŤ + + + Compressed Image + 圧縮ă•ă‚Śăźă‚¤ăˇăĽă‚¸ + + + Output Folder + ĺ‡şĺŠ›ĺ… + + + Keep Structure + ć§‹é€ ă‚’äżťćŚ + + + Keep Aspect Ratio + アスăšă‚ŻăćŻ”ă‚’äżťćŚ + + + Do not enlarge images + ç”»ĺŹă‚’拡大ă—ăŞă„ + + + error(s) +Time elapsed: + 個ă®ă‚¨ă©ăĽ +経éŽć™‚é–“: + + + Full Path + ă•ă«ă‘ă‚ą + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG ăŠă‚ăł BMP 形式ăŻJPG ă®ă‚ă†ă« +圧縮ă™ă‚‹ă“ă¨ăŻĺ‡şćťĄăľă›ă‚“. +Caesium ă§ăŻă€ăťă‚Śă‚‰ă®ĺ˝˘ĺĽŹă§ăŻč‡Şĺ‹•çš„ă« +最é©ăŞĺ“質ă«č¨­ĺ®šă•ă‚Śăľă™. + + + Auto preview + 自動ă—ă¬ă“ăĄăĽ + + + A new version is available! + ć–°ă—ă„ăăĽă‚¸ă§ăłăŚĺ©ç”¨ĺŹŻč˝ă§ă™! + + + Donate to Caesium + Caesium ă«ĺŻ„ä» + + + +Saved space: + +減少ă•ă‚Śăźĺ®ąé‡Ź: + + + Open Folder... + ă•ă‚©ă«ă€ă‚’é–‹ăŹ... + + + Compress! + 圧縮開始! + + + Action + 操作 + + + Cancel + ă‚­ăŁăłă‚»ă« + + + Failed to create the directory structure. + ă‡ă‚Łă¬ă‚ŻăăŞć§‹é€ ă®ä˝śćă«ĺ¤±ć•—. + + + Ctrl+L + Ctrl+L + + + Ctrl+O + Ctrl+O + + + Ctrl+P + Ctrl+P + + + Ctrl+Q + Ctrl+Q + + + Ctrl+S + Ctrl+S + + + Ctrl+W + Ctrl+W + + + Set an Output Directory first! + 出力ĺ…ă‚’ĺ…ă«č¨­ĺ®šă—ă¦ăŹă ă•ă„! + + + Deleting original files... + ă‚ŞăŞă‚¸ăŠă«ă•ă‚ˇă‚¤ă«ă‚’削除中... + + + Select output directory + 出力ĺ…ă‚’é¸ćŠž + + + Remove + 除去 + + + Resize + ăŞă‚µă‚¤ă‚ş + + + Minimize the application to system tray + 最小化ă§ă‚·ă‚ąă†ă ăă¬ă‚¤ă«ç§»ĺ‹• + + + Width: + 横幅: + + + I can't set the quality! + ĺ“質を設定ă§ăŤăľă›ă‚“! + + + Resolution + 解ĺŹĺş¦ + + + Compression Options + 圧縮設定 + + + Original Image + ă‚ŞăŞă‚¸ăŠă«ă‚¤ăˇăĽă‚¸ + + + Save as... + ĺŤĺ‰Ťă‚’ä»ă‘ă¦äżťĺ­... + + + Choose and output folder... + 出力ĺ…ă‚’é¸ćŠž... + + + Preview + ă—ă¬ă“ăĄăĽ + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + 対応ă™ă‚‹ĺ˝˘ĺĽŹ (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG ă•ă‚ˇă‚¤ă« (*.png);;JPEG ă•ă‚ˇă‚¤ă« (*.jpg *.jpeg);;BMP ă•ă‚ˇă‚¤ă« (*.bmp);;TIFF ă•ă‚ˇă‚¤ă« (*.tif *.tiff);;PPM ă•ă‚ˇă‚¤ă« (*.ppm);;XBM ă•ă‚ˇă‚¤ă« (*.xbm);;XPM ă•ă‚ˇă‚¤ă« (*.xpm) + + + Clear List + ăŞă‚ąăă‚’ă‚ŻăŞă‚˘ + + + Open List... + ăŞă‚ąăă‚’é–‹ăŹ... + + + Remove Item From List and Hard Disk + ăŞă‚ąăă¨ăŹăĽă‰ă‡ă‚Łă‚ąă‚Żă‹ă‚‰é …目を除去 + + + Not allowed! + 許容ă•ă‚Śăľă›ă‚“! + + + Quality + ĺ“質 + + + Restore + ĺľ©ĺ… + + + Compression done! + 圧縮完了! + + + Set Quality + ĺ“質を決定 + + + The original files will be deleted! + ă‚ŞăŞă‚¸ăŠă«ă•ă‚ˇă‚¤ă«ăŻĺ‰Šé™¤ă•ă‚Śăľă™! + + + About Qt + Qt ă«ă¤ă„㦠+ + + Failed to create the directory. +Aborting. + ă‡ă‚Łă¬ă‚ŻăăŞć§‹é€ ă®ä˝śćă«ĺ¤±ć•—. +中断ă—ă¦ă„ăľă™. + + + Absolute + 絶対値 + + + Percentage + ă‘ăĽă‚»ăłă + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + ă“ă®ĺ‹•ä˝śă‚’行ă†ă¨é¸ćŠžă•ă‚Śăźă•ă‚ˇă‚¤ă«ăŻĺ®Śĺ…¨ă« +ć¶ĺŽ»ă•ă‚Śăľă™.. 続行ă—ăľă™ă‹? + + + Save List As... + ăŞă‚ąăă«ĺŤĺ‰Ťă‚’ä»ă‘ă¦äżťĺ­... + + + New Resolution + ć–°ăźăŞč§ŁĺŹĺş¦ + + + Suffix: + 接尾語: + + + Select a profile file... + ă—ă­ă•ă‚ˇă‚¤ă«ă‚’é¸ćŠž... + + + Add Pictures... + ă”ă‚ŻăăŁă‚’追加... + + + Same for all + ă™ăąă¦ĺŚă設定 + + + Waiting... + 待機中... + + + The output folder doesn't exists. +Do you want to create it? + 出力ĺ…ă•ă‚©ă«ă€ăŚĺ­ĺś¨ă—ăľă›ă‚“. +ć–°ăźă«ä˝śćă—ăľă™ă‹? + + + Minimize to tray + ăă¬ă‚¤ă«ćś€ĺ°ŹĺŚ– + + + Quality: + ĺ“質: + + + Ctrl+Del + Ctrl+Del + + + Load Profile... + ă—ă­ă•ă‚ˇă‚¤ă«ă®čŞ­čľĽ... + + + The list is empty! Fill it! + ăŞă‚ąăăŚç©şă§ă™! 入力ă—ă¦ăŹă ă•ă„! + + + Remove Item + 項目を除去 + + + Save List + ăŞă‚ąăă‚’äżťĺ­ + + + New Size + ć–°ăźăŞă‚µă‚¤ă‚ş + + + Settings + 設定 + + + Ctrl+Shift+D + Ctrl+Shift+D + + + Ctrl+Shift+O + Ctrl+Shift+O + + + Item count: + 項目数: + + + Format: + 形式: + + + Warning + 警告 + + + Website + ウェă–サイă + + + Open a list file... + ăŞă‚ąăă‚’é–‹ăŹ... + + + Caesium List (*.clf) + Caesium ăŞă‚ąă (*.clf) + + + Open Directory + ă‡ă‚Łă¬ă‚ŻăăŞă‚’開㏠+ + + Remember last folder + 最後ă«ä˝żç”¨ă—ăźă•ă‚©ă«ă€ă‚’äżťćŚ + + + Height: + é«ă•: + + + Toolbar Icon Size + ă„ăĽă«ăăĽă®ă‚˘ă‚¤ă‚łăłă‚µă‚¤ă‚ş + + + Ctrl+Alt+Q + Ctrl+Alt+Q + + + Caesium - Image Compressor + Caesium - Image Compressor + + + - Caesium - Image Compressor + - Caesium - Image Compressor + + + Same folder as input + 入力ă¨ĺŚăă•ă‚©ă«ă€ + + + Online Support + ă‚Şăłă©ă‚¤ăłă‚µăťăĽă + + + Compression finished! +- + 圧縮ăŚĺ®Śäş†! +- + + + compressed +- + 圧縮ć¸ăż +- + + + skipped +- + ă‚ąă‚­ăă— +- + + + Processing: + 処ç†ä¸­: + + + + Exit + + No + ă„ă„ă + + + Yes + ăŻă„ + + + Always check + 常ă«ăェăă‚Ż + + + Do you really want to exit Caesium? + 本当㫠Caesium を終了ă—ăľă™ă‹? + + + Are you sure? + ă‚ă‚Ťă—ă„ă§ă™ă‹? + + + + Preferences + + OK + OK + + + ... + ... + + + Apply + é©ç”¨ + + + Style + スタイ㫠+ + + Original Size + ă‚ŞăŞă‚¸ăŠă«ă‚µă‚¤ă‚ş + + + Keep EXIF Information while compressing + 圧縮後も EXIFć…報を保ćŚă™ă‚‹ + + + Restore window size and layout at startup + 前回ă®ă‚¦ă‚Łăłă‰ă‚¦ă‚µă‚¤ă‚şă¨ă‚ąă‚żă‚¤ă«ă‚’äżťćŚ + + + Select default output directory + ă‡ă•ă‚©ă«ă出力ĺ…ă‚’é¸ćŠž + + + Cancel + ă‚­ăŁăłă‚»ă« + + + WindowsXP + WindowsXP + + + Load the last used profile at startup + 起動時ă«ĺ‰Ťĺ›žä˝żç”¨ă—ăźă—ă­ă•ă‚ˇă‚¤ă«ă‚’読ăżčľĽă‚€ + + + Fit Window + ウィăłă‰ă‚¦ă«ĺă‚Źă›ă‚‹ + + + Use a default output directory if none is specified + 特ă«ćŚ‡ĺ®šă•ă‚ŚăŞă„ĺ ´ĺăŻă‡ă•ă‚©ă«ă出力ĺ…を使用 + + + You need to restart the application before +changes take effect + 変更をé©ç”¨ă™ă‚‹ăźă‚ă«ăŻă€ă‚˘ă—ăŞă‚±ăĽă‚·ă§ăł +を再起動ă™ă‚‹ĺż…č¦ăŚă‚ă‚Šăľă™ + + + Default Path + ă‡ă•ă‚©ă«ăă‘ă‚ą + + + Scan subdirectories when you open a folder + ă•ă‚©ă«ă€ă‚’é–‹ă„ăźć™‚ă«ă‚µă–ă•ă‚©ă«ă€ă‚‚ă‚ąă‚­ăŁăłă™ă‚‹ + + + Language + 言語 + + + Compression + 圧縮 + + + Check for updates at startup + 起動時ă«ă‚˘ăă—ă‡ăĽăă®ćś‰ç„ˇă‚’確認 + + + Don't delete if input extension is different from output one + 入力ă•ă‚Śăźć‹ˇĺĽµĺ­ăŚĺ‡şĺŠ›ĺ˝˘ĺĽŹă¨ç•°ăŞă‚‹ĺ ´ĺăŻĺ‰Šé™¤ă—ăŞă„ + + + Information + イăłă•ă‚©ăˇăĽă‚·ă§ăł + + + Default Image View + ă‡ă•ă‚©ă«ăă»ă‚¤ăˇăĽă‚¸ă“ăĄăĽ + + + Prompt before exit + 終了前ă«ç˘şčŞŤă™ă‚‹ + + + Preferences + ă—ăŞă•ă‚ˇă¬ăłă‚ą + + + Keep the original Date Information + ă‚ŞăŞă‚¸ăŠă«ă®ć—Ąä»ć…報を保ćŚă™ă‚‹ + + + General + ä¸€č¬ + + + Skip if the output size is greater than the original + 出力サイズăŚă‚ŞăŞă‚¸ăŠă«ă‚’超ăă‚‹ĺ ´ĺăŻă‚ąă‚­ăă— + + + Delete the original file from disk + ă‚ŞăŞă‚¸ăŠă«ă•ă‚ˇă‚¤ă«ă‚’削除ă™ă‚‹ + + + Optimize PNG files during compression + 圧縮処ç†ä¸­ă« PNG ă•ă‚ˇă‚¤ă«ă‚’最é©ĺŚ– + + + Level: + ă¬ă™ă«: + + + Medium (Average) + 標準 (平均的) + + + Soft (Fastest) + ă‚˝ă•ă (é«é€ź) + + + Hard (Slowest) + ăŹăĽă‰ (低速) + + + Restore last used list at startup + 起動時ă«ĺ‰Ťĺ›žä˝żç”¨ă—ă¦ă„ăźăŞă‚ąăă‚’ĺľ©ĺ… + + + + QDropTreeWidget + + Open input folder + 入力ă•ă‚©ă«ă€ă‚’開㏠+ + + Open folder... + ă•ă‚©ă«ă€ă‚’é–‹ăŹ... + + + Open destination folder + 対象ă•ă‚©ă«ă€ă‚’開㏠+ + + Preview + ă—ă¬ă“ăĄăĽ + + + Clear list + ăŞă‚ąăă‚’ă‚ŻăŞă‚˘ + + + Add pictures... + ă”ă‚ŻăăŁă‚’追加... + + + Remove from list and Hard Disk + ăŞă‚ąăă¨ăŹăĽă‰ă‡ă‚Łă‚ąă‚Żă‹ă‚‰ĺ‰Šé™¤ + + + Remove item + 項目を除去 + + + + Updater + + Close + é–‰ăă‚‹ + + + Start + 開始 + + + Caesium updater + Caesium アăă—ă‡ăĽă‚ż + + + Downloading + ă€ă‚¦ăłă­ăĽă‰ä¸­ + + + Caesium will exit now in order to allow the update to run + アăă—ă‡ăĽăを実行ă™ă‚‹ăźă‚ă«ă€Caesium を終了ă—ăľă™ + + + ERROR: Connection timed out... + エă©ăĽ: 接続ă®ă‚żă‚¤ă ă‚˘ă‚¦ă... + + + Contacting server... + サăĽăă«ćŽĄç¶šä¸­... + + + Checking version... + ăăĽă‚¸ă§ăłă®ç˘şčŞŤ... + + + Caesium current version is: + Caesium ă®çŹľăăĽă‚¸ă§ăł: + + + An error occurred. Please check your internet connection. + サăĽăă¸ă®ćŽĄç¶šä¸­ă«ă‚¨ă©ăĽăŚç™şç”źă—ăľă—ăź. イăłă‚żăĽăŤăăă®ćŽĄç¶šă‚’再確認ă—ă¦ă‹ă‚‰ĺ†Ťč©¦čˇŚă—ă¦ăŹă ă•ă„. + + + Information + イăłă•ă‚©ăˇăĽă‚·ă§ăł + + + Download completed. + ă€ă‚¦ăłă­ăĽă‰ĺ®Śäş†. + + + Your version is + 現在ă®ăăĽă‚¸ă§ăł + + + diff --git a/caesium_kr.ts b/caesium_kr.ts new file mode 100644 index 0000000..3fe6bab --- /dev/null +++ b/caesium_kr.ts @@ -0,0 +1,1044 @@ + + + + + AboutDialog + + + About + + + + + Information + 프로그램 ě •ëł´ + + + + Thanks + 도와준 분들 + + + + License + 라이센스 + + + + Close + 닫기 + + + + Name: + 명칭: + + + + Version: + 버전: + + + + Author: + ě śěž‘ěž: + + + + Website: + Website: + í™íŽěť´ě§€: + + + + Translations: + ë˛ě—­: + + + + For Metatag manipulation + + + + + Base of the icon set + + + + + Caesium + + + Caesium - Image Compressor + Caesium - Image Compressor + + + + Name + 파일명 + + + + Size + ě›ëł¸ í¬ę¸° + + + + New Size + ëł€í™ í›„ í¬ę¸° + + + + Ratio + 비율 + + + + Quality + í’ě§ + + + + Resolution + ě›ëł¸ í•´ě도 + + + + Full Path + 경로 + + + + Add + 추가 + + + + Remove + ě śę±° + + + + + Preview + 미리보기 + + + + A new version is available! + 업테이트가 가능합ë‹ë‹¤! + + + + Compression Options + 압축 ěµě… + + + + Quality: + í’ě§: + + + + Set Quality + ě ěš© + + + + Format: + 포맷: + + + + JPG + JPG + + + + PNG + PNG + + + + BMP + BMP + + + + Resize + í¬ę¸° 변경 + + + + Absolute + ě ëŚ€ę°’ + + + + Percentage + ě대값 + + + + Height: + 높이: + + + px + px + + + + Input + ë¶ëź¬ě¤ę¸° + + + + Width: + ë„ëą„: + + + + Keep Aspect Ratio + ě›ëł¸ 비율 유지 + + + + Do not enlarge images + 확장í•ě§€ 않음 + + + + Output Folder + 저장 ěµě… + + + + ... + ... + + + + Suffix: + 접미어: + + + + Not allowed! + ë¶ę°€! + + + + Waiting... + 기다리는 중... + + + + + Cancel + 취소 + + + + The original files will be deleted! + ě›ëł¸ 파일을 ě‚­ě śí•©ë‹ë‹¤! + + + + Original Image + ě›ëł¸ 파일 + + + + Compressed Image + ëł€í™ ě‚¬ě§„ + + + + Auto preview + ěžëŹ™ 미리보기 + + + + File + 파일 + + + + Edit + 편집 + + + + Action + ěž‘ě—… + + + + View + 보기 + + + + Toolbar Icon Size + ě•„ěť´ě˝ í¬ę¸° + + + + Help + ëŹ„ě›€ë§ + + + + Tools + 도구 + + + + Add Pictures... + 파일 열기 + + + + Ctrl+O + Ctrl+O + + + + Open List... + 목록 열기 + + + + Ctrl+L + Ctrl+L + + + + Save List As... + 다른이름으로 목록 저장 + + + + Ctrl+S + Ctrl+S + + + + Exit + 종료 + + + + Ctrl+Q + Ctrl+Q + + + + Remove Item + ě śę±° + + + + Del + Del + + + + Clear List + 목록 지우기 + + + + Ctrl+Del + Ctrl+Del + + + + Ctrl+P + Ctrl+P + + + + Minimize to tray + 트ë ěť´ëˇś 보내기 + + + + Minimize the application to system tray + 트ë ěť´ëˇś 보내기 + + + + Ctrl+Alt+Q + Ctrl+Alt+Q + + + + + Compress! + 변í™! + + + + New Resolution + 변경 후 í•´ě도 + + + + + Same for all + ëŞ¨ë‘ ě ěš© + + + + Apply + ě ěš© + + + + Choose and output folder... + 저장 폴더 ě„ íť + + + + Keep Structure + 폴더í•íś 유지 + + + + Remember last folder + 저장폴더 기억 + + + + Same folder as input + ě›ëł¸ íŹ´ëŤ”ě— ě €ěžĄ + + + + Online Support + ě¨ëťĽěť¸ ě§€ě› + + + + Website + í™íŽěť´ě§€ + + + + Ctrl+W + Ctrl+W + + + + Check for Updates + 업테이트 확인 + + + + Donate to Caesium + í”„ëˇśě ťíŠ¸ě— "기부"í•ę¸°! + + + + About + "Caesium"ě— ëŚ€í•ě—¬ + + + + + About Qt + Qtě— ëŚ€í•ě—¬ + + + + Show Toolbar + í´ë°” 보이기 + + + + Settings + 설정 + + + + Open Folder... + 폴더 열기 + + + + Ctrl+Shift+O + Ctrl+Shift+O + + + + Remove Item From List and Hard Disk + 목록ě—ě„ś ě śę±° ë°Ź 파일 ě‚­ě ś + + + + Ctrl+Shift+D + Ctrl+Shift+D + + + + 32x32 + 32x32 + + + + 24x24 + 24x24 + + + + Save Profile... + 프로필 저장 + + + + Load Profile... + 프로필 ë¶ëź¬ě¤ę¸° + + + + Save List + 목록 저장 + + + + Select file(s) + 파일 ě„ íť + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + ě§€ě› íŹ¬ë§· (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + + + + Compression finished! +- + + + + + compressed +- + + + + + skipped +- + + + + + Item count: + ę°śě: + + + + Open Directory + 폴더 열기 + + + + Select output directory + 저장 폴더 지정 + + + + I can't set the quality! + í’ě§ěť„ 설정할 ě 없습ë‹ë‹¤! + + + + Info + ě •ëł´ + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG ë°Ź BMP파일은 무ě†ě‹¤ 포맷으로 +JPGě˛ëźĽ ě••ě¶•ë  ě 없습ë‹ë‹¤. +í•´ë‹ą íŚŚěťĽěť í’ě§ěť€ ěžëŹ™ěśĽëˇś 설정ë©ë‹ë‹¤. + + + + + Save as... + 다른이름으로 저장 + + + + + Caesium List (*.clf) + Caesium List(*.clf) + + + + Open a list file... + 목록 열기 + + + About Qt4 + Qt4ě— ëŚ€í•ě—¬ + + + + + + + Error + ERROR + + + + Failed to create the directory. +Aborting. + 폴더 ěťě„±ě— 실패í•ě€ěŠµë‹ë‹¤. +ěž‘ě—…ěť„ 중단합ë‹ë‹¤. + + + + The list is empty! Fill it! + ëą ëŞ©ëˇťěž…ë‹ë‹¤! + + + + Set an Output Directory first! + 저장할 ěś„ěąëĄĽ 지정í•ě„¸ěš”! + + + + Deleting original files... + ě›ëł¸ 파일 ě‚­ě ś 중 + + + + Compression done! + ëł€í™ ě™„ëŁŚ! + + + Compression Completed with: +» + ě세 ě •ëł´ + + + compressed +» + ëł€í™ + + + skipped +» + 취소 + + + + error(s) +Time elapsed: + ě—러 +소요시간: + + + + +Saved space: + í™•ëł´ëś ěš©ëź‰: + + + + Processing: + + + + + - Caesium - Image Compressor + - Caesium - Image Compressor + + + + + Warning + 경고 + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + ě„ íťëś 파일이 "ě구ě ěśĽëˇś ě‚­ě ś"ë©ë‹ë‹¤. +계속 진행í•ě‹śę˛ ěŠµë‹ęąŚ? + + + + + Yes + ě + + + + No + ě•„ë‹ě¤ + + + + The output folder doesn't exists. +Do you want to create it? + 지정한 폴더가 존재í•ě§€ 않습ë‹ë‹¤. +폴더를 ěťě„±í•ě‹śę˛ ěŠµë‹ęąŚ? + + + + + Caesium Profile (*.cpf) + Caesium Profile (*.cpf) + + + + Select a profile file... + 프로필 ě„ íť + + + + Restore + ë돌리기 + + + + Close + 닫기 + + + + Failed to create the directory structure. + 폴더 ěťě„±ě— 실패í•ě€ěŠµë‹ë‹¤. + + + + Exit + + + Are you sure? + Are You Sure? + + + + Do you really want to exit Caesium? + ě •ë§ "Caesium"ěť„ 종료í•ě‹śę˛ ěŠµë‹ęąŚ? + + + + Always check + í•­ě 묻기 + + + + Yes + ě + + + + No + ě•„ë‹ě¤ + + + + Preferences + + + Preferences + í™ę˛˝ě„¤ě • + + + + General + ěťĽë° + + + + Default Path + 기본폴더 설정 + + + + Use a default output directory if none is specified + 저장폴더 미지정 ě‹ś 기본폴더 사용 + + + + ... + ... + + + + Default Image View + 보기 + + + + Original Size + ě›ëł¸ í¬ę¸°ëˇś 보기 + + + + Fit Window + ě°˝ě— ë§žě¶”ě–´ 보기 + + + + Scan subdirectories when you open a folder + í•ěś„ 폴더 íě‰ + + + + Load the last used profile at startup + ě‹śěž‘í•  ë•Ś ěť´ě „ 프로필 ë¶ëź¬ě¤ę¸° + + + + Prompt before exit + 종료할 ë•Ś 알림창 보여주기 + + + + Check for updates at startup + Check for uptades at startup + ě‹śěž‘í•  ë•Ś 업테이트 확인í•ę¸° + + + + Compression + ëł€í™ + + + + Keep EXIF Information while compressing + EXIF ě •ëł´ 유지 + + + + Delete the original file from disk + ě›ëł¸ 파일 ě‚­ě ś + + + + Keep the original Date Information + ě‹śę°„ ě •ëł´ 유지 + + + + + Language + 언어 + + + + Restore last used list at startup + + + + + Restore window size and layout at startup + ě‹śěž‘í•  ë•Ś ěť´ě „ ě°˝ í¬ę¸° 유지í•ę¸° + + + + Style + í…Śë§ + + + + WindowsXP + WindowsXP + + + + Skip if the output size is greater than the original + 변í™ě‹ś 용량이 ě»¤ě§ ę˛˝ěš° 변í™í•ě§€ 않기 + + + + Don't delete if input extension is different from output one + 확장ěžę°€ ë‹¬ëťĽě§ ę˛˝ěš° ě‚­ě śí•ě§€ 않음 + + + + Optimize PNG files during compression + + + + + Level: + + + + + + Medium (Average) + + + + + OK + 확인 + + + + Cancel + 취소 + + + + Apply + ě ěš© + + + + Information + 알림 + + + + You need to restart the application before +changes take effect + í•´ë‹ą 사항은 프로그램 종료 í›„ě— ě ěš©ë©ë‹ë‹¤. + + + + Soft (Fastest) + + + + + Hard (Slowest) + + + + + Select default output directory + 저장 폴더 ě„ íť + + + + QDropTreeWidget + + + Clear list + 목록 지우기 + + + + Preview + 미리보기 + + + + Remove item + ě śę±° + + + + Add pictures... + 파일 추가 + + + + Open folder... + 폴더 열기 + + + + Open destination folder + 저장 폴더 열기 + + + + Open input folder + 폴더 열기 + + + + Remove from list and Hard Disk + 목록ě—ě„ś ě śę±° ë°Ź ě›ëł¸ 파일 ě‚­ě ś + + + + Updater + + + Caesium updater + Caesium updater + + + + Your version is + í„재 버전: + + + + Checking version... + ě로운 변경 ë‚´ě—­ 확인 중... + + + + Start + ě‹śěž‘ + + + + Close + 닫기 + + + + Caesium current version is: + í„재 버전: + + + + + + ERROR: Connection timed out... + ERROR: 접속 ë¶ę°€ + + + + + + An error occurred. Please check your internet connection. + 인터넷 연결을 í™•ěť¸í•´ěŁĽě‹­ě‹śě¤ + + + + Contacting server... + 서버 접속중... + + + + Downloading + 다운로드 중 + + + + Download completed. + 다운로드 완료 + + + + Information + 알림 + + + + Caesium will exit now in order to allow the update to run + 업테이트 ě ěš©ěť„ ěś„í•´ 프로그램을 종료합ë‹ë‹¤. + + + diff --git a/caesium_pt-br.ts b/caesium_pt-br.ts new file mode 100644 index 0000000..8f2d3bb --- /dev/null +++ b/caesium_pt-br.ts @@ -0,0 +1,861 @@ + + + + + AboutDialog + + About + Sobre + + + Close + Fechar + + + Name: + Nome: + + + License + Licensa + + + Translations: + Traduções: + + + For Metatag manipulation + Para manipulação de metatags + + + Thanks + Agradecimentos + + + Base of the icon set + Base de Ă­cones + + + Author: + Autor: + + + Information + Informação + + + Website: + Website: + + + Version: + VersĂŁo: + + + Website: + + + + + Caesium + + No + NĂŁo + + + ... + ... + + + BMP + BMP + + + Add + Adicionar + + + Del + Delete + + + JPG + JPG + + + PNG + PNG + + + Yes + Sim + + + Edit + Editar + + + Exit + Sair + + + File + Arquivo + + + Help + Ajuda + + + Info + Informação + + + Name + Nome + + + Size + Tamanho + + + View + Ver + + + Caesium Profile (*.cpf) + Perfil Caesium (*.cpf) + + + 24x24 + 24x24 + + + 32x32 + 32x32 + + + About + Sobre + + + Error + Erro + + + Ratio + Taxa + + + Tools + Ferramentas + + + Save Profile... + Salvar Perfil... + + + Compression Completed with: +» + CompressĂŁo Completa com: +» + + + Show Toolbar + Mostrar Barra de Ferramentas + + + Select file(s) + Selecionar arquivo(s) + + + compressed +» + comprimidos +» + + + Check for Updates + Procurar Atualizações + + + Compressed Image + Imagem Comprimida + + + Output Folder + Pasta de SaĂ­da + + + error(s) +Time elapsed: + erro(s) +Tempo total: + + + Full Path + Caminho Completo + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG e BMP sĂŁo formatos sem perda de qualidade, e +nĂŁo podem ser comprimidos como arquivos JPG. +Caesium vai definir automaticamente a qualidade +para esses dois formatos. + + + A new version is available! + Uma nova versĂŁo está disponĂ­vel! + + + Donate to Caesium + Faça uma Doação + + + +Saved space: + +Espaço economizado: + + + Open Folder... + Abrir Pasta... + + + Compress! + Comprimir! + + + Action + Ação + + + Cancel + Cancelar + + + Ctrl+L + Ctrl+L + + + Ctrl+O + Ctrl+O + + + Ctrl+P + Ctrl+P + + + Ctrl+Q + Ctrl+Q + + + Ctrl+S + Ctrl+S + + + Ctrl+W + Ctrl+W + + + Set an Output Directory first! + Defina uma Pasta de SaĂ­da primeiro! + + + Deleting original files... + Apagando arquivos originais... + + + Select output directory + Selecionar pasta de saĂ­da + + + Remove + Remover + + + Return + Voltar + + + I can't set the quality! + NĂŁo consigo ver a qualidade! + + + Compression Options + Opções de CompressĂŁo + + + Original Image + Imagem Original + + + About Qt4 + Sobre Qt4 + + + skipped +» + pulados +» + + + Save as... + Salvar como... + + + Preview + Visualizar + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + Imagens Suportadas (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;Arquivos PNG (*.png);;Arquivos JPEG (*.jpg *.jpeg);;Arquivos BMP (*.bmp);;Arquivos TIFF (*.tif *.tiff);;Arquivos PPM (*.ppm);;Arquivos XBM (*.xbm);;Arquivos XPM (*.xpm) + + + Clear List + Limpar Lista + + + Open List... + Abrir Lista... + + + Remove Item From List and Hard Disk + Remover Item da Lista e do Disco RĂ­gido + + + Not allowed! + NĂŁo permitido! + + + Quality + Qualidade + + + Compression done! + CompressĂŁo terminada! + + + Set Quality + Definir Qualidade + + + The original files will be deleted! + Os arquivos originais serĂŁo apagados! + + + About Qt + Sobre Qt + + + Failed to create the directory. +Aborting. + Erro ao criar a pasta. +Abortando. + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Isso vai apagar os arquivos selecionados PERMANENTEMENTE. +VocĂŞ tem certeza de que quer continuar? + + + Save List As... + Salvar Lista Como... + + + Suffix: + Sufixo: + + + Select a profile file... + Selecione um arquivo de perfil... + + + Add Pictures... + Adicionar Fotos... + + + Waiting... + Esperando... + + + The output folder doesn't exists. +Do you want to create it? + A pasta de saĂ­da nĂŁo existe. +VocĂŞ quer criá-la? + + + Quality: + Qualidade: + + + Ctrl+Del + Ctrl+Delete + + + Load Profile... + Carregar Perfil... + + + The list is empty! Fill it! + A lista está vazia! Preencha-a! + + + Remove Item + Remover Item + + + Remember Last Folder + Lembrar Ăšltima Pasta + + + Save List + Salvar Lista + + + New Size + Novo Tamanho + + + Settings + Configurações + + + Same Quality For All + Mesma Qualidade Para Todos + + + Ctrl+Shift+D + Ctrl+Shift+D + + + Ctrl+Shift+O + Ctrl+Shift+O + + + Item count: + Contador de itens: + + + Format: + Formato: + + + Warning + Aviso + + + Website + Website + + + Open a list file... + Abrir uma lista... + + + Caesium List (*.clf) + Lista Caesium (*.clf) + + + Open Directory + Abrir Pasta + + + Toolbar Icon Size + Tamanho dos ĂŤcones da BarradeFerramentas + + + Caesium - Image Compressor + Caesium - Compressor de Imagens + + + Same Folder as Input + Usar a Pasta de Entrada + + + - Caesium - Image Compressor + - Caesium - Compressor de Imagens + + + Online Support + Suporte Online + + + Resolution + + + + Resize + + + + Absolute + + + + Percentage + + + + Height: + + + + Width: + + + + Keep Aspect Ratio + + + + Do not enlarge images + + + + Minimize to tray + + + + Minimize the application to system tray + + + + Ctrl+Alt+Q + + + + Restore + + + + Close + Fechar + + + Input + + + + Auto preview + + + + New Resolution + + + + Same for all + + + + Apply + + + + Choose and output folder... + + + + Keep Structure + + + + Remember last folder + + + + Same folder as input + + + + Failed to create the directory structure. + + + + Compression finished! +- + + + + compressed +- + + + + skipped +- + + + + Processing: + + + + + Exit + + No + NĂŁo + + + Yes + Sim + + + Always check + Sempre perguntar + + + Do you really want to exit Caesium? + VocĂŞ quer mesmo sair do Caesium? + + + Are you sure? + VocĂŞ tem certeza? + + + + Preferences + + OK + OK + + + ... + ... + + + Original Size + Tamanho Original + + + Keep EXIF Information while compressing + Manter Informação EXIF enquanto comprime + + + Select default output directory + Selecionar pasta de saĂ­da padrĂŁo + + + Cancel + Cancelar + + + Load the last used profile at startup + Carregar o Ăşltimo perfil utilizado a iniciar + + + Fit Window + Ajustar Janela + + + Use a default output directory if none is specified + Usar uma pasta de saĂ­da padrĂŁo se nenhuma for especificada + + + buttonGroup + buttonGroup + + + You need to restart the application before +changes take effect + VocĂŞ precisa reiniciar o aplicativo para que +as mudanças tenham efeito + + + Default Path + Caminho PadrĂŁo + + + Scan subdirectories when you open a folder + Pesquisar subpastas quando abrir uma pasta + + + Language + Idioma + + + Compression + CompressĂŁo + + + Check for uptades at startup + Procurar atualizações ao iniciar + + + Information + Informação + + + Default Image View + Visualização PadrĂŁo de Imagens + + + Prompt before exit + Lembrete ao sair + + + Preferences + PreferĂŞncias + + + Keep the original Date Information + Manter a Informação de Data original + + + General + Geral + + + Skip if the output size is greater than the original + Pular se o tamanho de saĂ­da for maior que o original + + + Delete the original file from disk + Deletar o arquivo origninal do disco + + + Restore window size and layout at startup + + + + Style + + + + WindowsXP + + + + Apply + + + + Check for updates at startup + + + + Don't delete if input extension is different from output one + + + + Optimize PNG files during compression + + + + Level: + + + + Medium (Average) + + + + Soft (Fastest) + + + + Hard (Slowest) + + + + Restore last used list at startup + + + + + QDropTreeWidget + + Open input folder + Abrir pasta de entrada + + + Open folder... + Abrir pasta... + + + Open destination folder + Abrir pasta de destino + + + Preview + Visualizar + + + Clear list + Limpar lista + + + Add pictures... + Adicionar imagens... + + + Remove from list and Hard Disk + Remover da lista e do Disco RĂ­gido + + + Remove item + Remover Item + + + + Updater + + Close + Fechar + + + Start + Iniciar + + + Caesium updater + Atualizador do Caesium + + + Downloading + Baixando + + + Caesium will exit now in order to allow the update to run + Caesium será fechado para permitir a atualização + + + ERROR: Connection timed out... + ERRO. A conexĂŁo excedeu o tempo limite... + + + Contacting server... + Contatando server... + + + Checking version... + Checando versĂŁo... + + + Caesium current version is: + A VersĂŁo atual do Caesium Ă©: + + + An error occurred. Please check your internet connection. + Ocorreu um erro. Por favor, cheque sua conexĂŁo. + + + Information + Informação + + + Download completed. + Download completo. + + + Your version is + Sua versĂŁo Ă© + + + diff --git a/caesium_ru.ts b/caesium_ru.ts new file mode 100644 index 0000000..6ed104f --- /dev/null +++ b/caesium_ru.ts @@ -0,0 +1,1175 @@ + + + + + AboutDialog + + + About + Đž программе + + + + Information + Đнформация + + + + Thanks + БлагодарноŃти + + + + License + Лицензия + + + + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html> +<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>LatestRelease - gpl3rus - Самый Ńвежий (0.2) релиз - Translate GPL 3 into Russian / Перевод PL 3 на Ń€ŃŃŃкий ŃŹĐ·Ń‹Đş - Google Project Hosting</title></head> +<body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"><div id="maincol"><div id="wikipage"><table><tbody><tr><td style="vertical-align: top; padding-left: 5px;"><div id="wikicontent"><div class="vt" id="wikimaincol"> +<h4><a name="Неофициальный_Перевод_GNU_GPLv3"></a>Неофициальный Перевод GNU GPLv3<a href="#%D0%9D%D0%B5%D0%BE%D1%84%D0%B8%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%9F%D0%B5%D1%80%D0%B5%D0%B2%D0%BE%D0%B4_GNU_GPLv3" class="section_anchor"></a></h4><p><a href="http://gpl3rus.googlecode.com/" rel="nofollow">http://gpl3rus.googlecode.com</a> </p><p>(C) 2007 Савков Đртём (<a href="mailto:sm00th.trac3r@gmail.com" rel="nofollow">sm00th.trac3r@gmail.com</a>) </p><p>(C) 2007 Палажченко ĐлекŃей (<a href="mailto:alek.silverstone@gmail.com" rel="nofollow">alek.silverstone@gmail.com</a>) </p><h4><a name="Unofficial_Translation_of_GNU_GPLv3"></a>Unofficial Translation of GNU GPLv3<a href="#Unofficial_Translation_of_GNU_GPLv3" class="section_anchor"></a></h4><p><a href="http://gpl3rus.googlecode.com/" rel="nofollow">http://gpl3rus.googlecode.com</a> </p><p>(C) 2007 Savkov Artem (<a href="mailto:sm00th.trac3r@gmail.com" rel="nofollow">sm00th.trac3r@gmail.com</a>) </p><p>(C) 2007 Palazchenko Aleksey (<a href="mailto:alek.silverstone@gmail.com" rel="nofollow">alek.silverstone@gmail.com</a>) </p><p>This is an unofficial translation of the GNU General Public License into Russian. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU GPL - only the original English text of the GNU GPL does that. However, we hope that this translation will help Russian-speakers understand the GNU GPL better. </p><p>НаŃтоящий перевод Стандартной ОбщеŃтвенной Лицензии GNU на Ń€ŃŃŃкий ŃŹĐ·Ń‹Đş не являетŃŃŹ официальным. Он не опŃбликован Фондом Свободного Программного ОбеŃпечения и не ŃŃтанавливает имеющих юридичеŃĐşŃŃŽ ŃĐ¸Đ»Ń ŃŃловий для раŃпроŃтранения программного обеŃпечения, которое раŃпроŃтраняетŃŃŹ на ŃŃловиях Стандартной ОбщеŃтвенной Лицензии GNU. ĐŁŃловия, имеющие юридичеŃĐşŃŃŽ ŃилŃ, закреплены иŃключительно в Đ°Ńтентичном текŃте Стандартной ОбщеŃтвенной Лицензии GNU на английŃком языке. Мы надеемŃŃŹ, что наŃтоящий перевод поможет Ń€ŃŃŃкоязычным пользователям Đ»ŃчŃе понять Ńодержание Стандартной ОбщеŃтвенной Лицензии GNU. </p><h4><a name="СТĐНДĐРТНĐĐŻ_ОБЩЕСТВЕННĐĐŻ_Đ›ĐЦЕНЗĐĐŻ"></a>СТĐНДĐРТНĐĐŻ ОБЩЕСТВЕННĐĐŻ Đ›ĐЦЕНЗĐĐŻ GNU<a href="#%D0%A1%D0%A2%D0%90%D0%9D%D0%94%D0%90%D0%A0%D0%A2%D0%9D%D0%90%D0%AF_%D0%9E%D0%91%D0%A9%D0%95%D0%A1%D0%A2%D0%92%D0%95%D0%9D%D0%9D%D0%90%D0%AF_%D0%9B%D0%98%D0%A6%D0%95%D0%9D%D0%97%D0%98%D0%AF" class="section_anchor"></a></h4><h5><a name="ВерŃия_3,_от_29_июня_2007"></a>ВерŃия 3, от 29 июня 2007<a href="#%D0%92%D0%B5%D1%80%D1%81%D0%B8%D1%8F_3,_%D0%BE%D1%82_29_%D0%B8%D1%8E%D0%BD%D1%8F_2007" class="section_anchor"></a></h5><p>Copyright (C) 2007 Free Software Foundation, Inc. &lt;<a href="http://fsf.org/%3E" rel="nofollow">http://fsf.org/&gt;</a> </p><p>Каждый имеет право раŃпроŃтранять точные копии этой лицензии, но без внеŃения изменений. </p><h5><a name="ПРЕĐМБУЛĐ"></a>ПРЕĐМБУЛĐ<a href="#%D0%9F%D0%A0%D0%95%D0%90%D0%9C%D0%91%D0%A3%D0%9B%D0%90" class="section_anchor"></a></h5><p>Стандартная ОбщеŃтвенная Лицензия GNU (GNU General Public License, GNU GPL) - ŃŤŃ‚Đľ Ńвободная <a href="http://www.gnu.org/copyleft/copyleft.ru.html" rel="nofollow">copyleft</a> лицензия для программного обеŃпечения (ПО) и Đ´Ń€Ńгих видов произведений. </p><p>БольŃинŃтво лицензий на программное обеŃпечение и Đ´Ń€Ńгие произведения Ńпроектированы Ń‚Đ°Đş, чтобы лиŃить Đ˛Đ°Ń Ńвободы делитьŃŃŹ ими и изменять их. Стандартная ОбщеŃтвенная Лицензия GNU, напротив, разработана Ń Ń†ĐµĐ»ŃŚŃŽ гарантировать Đ’Đ°Ńе право раŃпроŃтранять и вноŃить изменения во вŃе верŃии программного обеŃпечения - для ŃверенноŃти, что ПО ĐľŃтанетŃŃŹ Ńвободным для вŃех пользователей. Мы, Фонд Свободного Программного ОбеŃпечения (Free Software Foundation), иŃпользŃем GNU GPL для больŃей чаŃти наŃего программного обеŃпечения; ŃŤŃ‚Đ° лицензия применяетŃŃŹ также Đş любым Đ´Ń€Ńгим произведениям, чьи авторы иŃпользŃŃŽŃ‚ её. Đ’Ń‹ можете иŃпользовать ŃŤŃ‚Ń Đ»Đ¸Ń†ĐµĐ˝Đ·Đ¸ŃŽ и для Ńвоего ПО. </p><p>Когда ĐĽŃ‹ говорим Đľ Ńвободном ПО, ĐĽŃ‹ говорим Đľ Ńвободе, Đ° не цене. НаŃи лицензии Ńпроектированы Ń‚Đ°Đş, чтобы ŃĐ´ĐľŃтоверитьŃŃŹ в Đ’Đ°Ńем праве раŃпроŃтранять копии Ńвободного ПО (и взимать Đ·Đ° ŃŤŃ‚Đľ ĐżĐ»Đ°Ń‚Ń ĐżĐľ ŃĐ˛ĐľĐµĐĽŃ Đ¶ĐµĐ»Đ°Đ˝Đ¸ŃŽ), чтобы Đ’Ń‹ полŃчали иŃходный код или могли полŃчить его при желании, чтобы Đ’Ń‹ могли изменять ПО или иŃпользовать его чаŃти в новых Ńвободных программах, и чтобы Đ’Ń‹ знали что Đ’Ń‹ можете ŃŤŃ‚Đľ Ńделать. </p><p>Для защиты Đ’Đ°Ńих прав, нам необходимо ограничивать Đ´Ń€Ńгих в возможноŃти отказать Đ’Đ°ĐĽ в Đ’Đ°Ńих правах или проŃить Đ’Đ°Ń ĐľŃ‚ĐşĐ°Đ·Đ°Ń‚ŃŚŃŃŹ от них. ĐźĐľŃŤŃ‚ĐľĐĽŃ ĐµŃли Đ’Ń‹ раŃпроŃтраняете копии Ńвободного ПО или изменяете его, Ń‚Đľ на Đ’Đ°Ń Đ»ĐľĐ¶Đ°Ń‚ŃŃŹ некоторые обязанноŃти: обязанноŃти Ńважать ŃĐ˛ĐľĐ±ĐľĐ´Ń Đ´Ń€Ńгих. </p><p>Например, еŃли Đ’Ń‹ раŃпроŃтраняете копии Ńвободного ПО, беŃплатно или по определённой цене, Đ’Ń‹ должны предоŃтавлять полŃчателям те же Ńвободы, которые полŃчили Ńами. Đ’Ń‹ должны быть Ńверены, что они, также как и Đ’Ń‹, полŃчили или могŃŃ‚ полŃчить иŃходный код. Đ Đ’Ń‹ должны донеŃти Đ´Đľ них эти ŃŃловия, чтобы они знали Ńвои права. </p><p>Разработчики, иŃпользŃющие GNU GPL, защищают Đ’Đ°Ńи права Ń ĐżĐľĐĽĐľŃ‰ŃŚŃŽ ŃледŃющих двŃŃ… Ńагов: (1) заявляют авторŃкие права на ПО, и (2) предоŃтавляют Đ’Đ°ĐĽ ŃŤŃ‚Ń Đ»Đ¸Ń†ĐµĐ˝Đ·Đ¸ŃŽ, дающŃŃŽ Đ’Đ°ĐĽ законное право копировать, раŃпроŃтранять и/или изменять его. </p><p>Для защиты разработчиков и авторов GPL чётко объяŃняет, что нет никакой гарантии, раŃпроŃтраняемой на Ńвободное ПО. Для ŃдобŃтва пользователей и авторов, GPL требŃет чтобы модифицированные верŃии обозначалиŃŃŚ как "изменённые", таким образом проблемы и ĐľŃибки изменённых верŃий не бŃĐ´ŃŃ‚ ĐľŃибочно припиŃаны авторам оригинала. </p><p>Некоторые ŃŃтройŃтва Ńпроектированы Ń‚Đ°Đş, чтобы запретить пользователю ŃŃŃ‚Đ°Đ˝ĐľĐ˛ĐşŃ Đ¸Đ»Đ¸ Đ·Đ°ĐżŃŃĐş изменённых верŃии ПО, хотя производитель может ŃŤŃ‚Đľ делать. Đ­Ń‚Đľ абŃолютно неŃовмеŃтимо Ń Đ˝Đ°Ńей целью - защитой пользовательŃких прав изменять ПО. Подобные злоŃпотребления ŃиŃтематичеŃки проиŃходят в Ńфере продŃктов индивидŃального иŃпользования, в которой ŃŤŃ‚Đľ ĐľŃобенно неприемлемо. Đменно ĐżĐľŃŤŃ‚ĐľĐĽŃ ĐĽŃ‹ разработали даннŃŃŽ верŃию GPL чтобы запретить подобнŃŃŽ ĐżŃ€Đ°ĐşŃ‚Đ¸ĐşŃ Đ˝Đ° этом рынке. Đ•Ńли подобные проблемы возникнŃŃ‚ в Đ´Ń€Ńгих облаŃŃ‚ŃŹŃ…, ĐĽŃ‹, ради защиты Ńвободы пользователей, готовы раŃŃирить дейŃтвие лицензии на эти новые облаŃти в бŃĐ´Ńщих верŃиях GPL. </p><p>Наконец, каждой программе поŃтоянно Ńгрожают Ńофтверные патенты. Đ“ĐľŃŃĐ´Đ°Ń€Ńтва не должны допŃŃкать ограничение патентами разработки и иŃпользования ПО на компьютерах общего назначения, но Ń‚.Đş. они ŃŤŃ‚Đľ делают, ĐĽŃ‹ хотим избежать опаŃноŃти наложения патентов на Ńвободные программы, что Ńделает их, фактичеŃки, чаŃтной ŃобŃтвенноŃŃ‚ŃŚŃŽ. Для предотвращения этого, GPL гарантирŃет, что патенты не могŃŃ‚ быть иŃпользованы Ń Ń†ĐµĐ»ŃŚŃŽ Ńделать ĐżŃ€ĐľĐłŃ€Đ°ĐĽĐĽŃ Đ˝ĐµŃвободной. </p><p>Ниже ŃледŃŃŽŃ‚ точные ŃŃловия копирования, раŃпроŃтранения и изменения. </p><h5><a name="УСЛОВĐĐŻ"></a>УСЛОВĐĐŻ<a href="#%D0%A3%D0%A1%D0%9B%D0%9E%D0%92%D0%98%D0%AF" class="section_anchor"></a></h5><h5><a name="0._Определения"></a>0. Определения<a href="#0._%D0%9E%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F" class="section_anchor"></a></h5><p>"Данная Лицензия" подразŃмевает третью верŃию Стандартной ОбщеŃтвенной Лицензии GNU. </p><p>"ĐвторŃкое право" также обозначает законы, Ńхожие Ń Đ·Đ°ĐşĐľĐ˝Đ°ĐĽĐ¸ об авторŃком праве, применимые Đş Đ´Ń€Ńгим видам произведений, например, топологиям интегральных микроŃхем. </p><p>"Программа" подразŃмевает любое охраноŃпоŃобное произведение, лицензированное Данной Лицензией. Đš ĐşĐ°Đ¶Đ´ĐľĐĽŃ Đ˛Đ»Đ°Đ´ĐµĐ»ŃŚŃ†Ń Đ»Đ¸Ń†ĐµĐ˝Đ·Đ¸Đ¸ (лицензиатŃ) обращаютŃŃŹ как "Đ’Ń‹". "Владельцы лицензии" и "полŃчатели" могŃŃ‚ быть как физичеŃкими, Ń‚Đ°Đş и юридичеŃкими лицами. </p><p>"Модифицирование" произведения означает копирование или адаптация вŃего или чаŃти произведения в форме, требŃющей разреŃения правообладателя и отличающееŃŃŹ от точного копирования. РезŃльтат называетŃŃŹ "изменённой верŃией" предыдŃщего произведения или произведением, "ĐľŃнованным" на предыдŃщем произведении. </p><p>"Лицензированное произведение" подразŃмевает немодифицированнŃŃŽ ПрограммŃ, либо произведение, ĐľŃнованное на Программе. </p><p>"Тиражировать" произведение означает делать что-либо Ń Đ˝Đ¸ĐĽ, что, без разреŃения, Ńделает Đ˛Đ°Ń Đ˝ĐµĐżĐľŃредŃтвенно либо коŃвенно ответŃтвенным Đ·Đ° нарŃŃение авторŃкого права в ŃоответŃтвии Ń ĐżŃ€Đ¸ĐĽĐµĐ˝Đ¸ĐĽŃ‹ĐĽ законом, Đ·Đ° иŃключением Đ·Đ°ĐżŃŃка на компьютере или изменения личной копии. Тиражирование включает в Ńебя копирование, раŃпроŃтранение (Ń Đ¸Đ»Đ¸ без изменений), ĐżŃбликацию, и, в некоторых Ńтранах, некоторые Đ´Ń€Ńгие дейŃтвия. </p><p>"Передача" произведения означает любой вид тиражирования, который позволяет третьим лицам Ńоздавать или полŃчать копии. ПроŃтое взаимодейŃтвие Ń ĐżĐľĐ»ŃŚĐ·ĐľĐ˛Đ°Ń‚ĐµĐ»ĐµĐĽ через компьютернŃŃŽ Ńеть, без полŃчения копии, передачей не являетŃŃŹ. </p><p>ПользовательŃкий Đ¸Đ˝Ń‚ĐµŃ€Ń„ĐµĐąŃ ĐľŃ‚ĐľĐ±Ń€Đ°Đ¶Đ°ĐµŃ‚ "СоответŃтвŃющие правовые Ńведомления", которые включают, по крайней мере, легко Đ´ĐľŃŃ‚Ńпные и заметные Ń„Ńнкции, которые (1) отображают ŃоответŃтвŃющее Ńведомление об авторŃком праве и (2) объяŃняют пользователю, что нет никакой гарантии на ŃŤŃ‚Đľ произведение (кроме тех ŃĐ»Ńчаев, когда гарантии явно предоŃтавлены), что владельцы лицензий могŃŃ‚ передавать произведение ŃоглаŃно Данной Лицензии, и как поŃмотреть копию Данной Лицензии. Đ•Ńли Đ¸Đ˝Ń‚ĐµŃ€Ń„ĐµĐąŃ ĐżŃ€ĐµĐ´ĐľŃтавляет набор пользовательŃких команд или меню, Ń‚Đľ ŃоответŃтвŃющий заметный ĐżŃнкт Ńдовлетворяет данным ŃŃловиям. </p><h5><a name="1._ĐŃходный_код"></a>1. ĐŃходный код<a href="#1._%D0%98%D1%81%D1%85%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4" class="section_anchor"></a></h5><p>"ĐŃходный код" произведения подразŃмевает предпочитаемŃŃŽ Ń„ĐľŃ€ĐĽŃ ĐżŃ€ĐľĐ¸Đ·Đ˛ĐµĐ´ĐµĐ˝Đ¸ŃŹ для Ńоздания его модификаций. "Объектный код" подразŃмевает любŃŃŽ Đ´Ń€ŃĐłŃŃŽ Ń„ĐľŃ€ĐĽŃ ĐżŃ€ĐľĐ¸Đ·Đ˛ĐµĐ´ĐµĐ˝Đ¸ŃŹ. </p><p>"Стандартный интерфейŃ" означает интерфейŃ, который либо являетŃŃŹ официальным Ńтандартом, ŃŃтановленным признанным органом по Ńтандартизации, либо, в ŃĐ»Ńчае интерфейŃов, Ńпецифичных для конкретного языка программирования, тот, что Ńироко раŃпроŃтранён Ńреди разработчиков на данном языке. </p><p>"СиŃтемные библиотеки" иŃполнимых произведений включают в Ńебя вŃŃ‘ отличное от произведения как целого, (Đ°) включающееŃŃŹ в ŃтандартнŃŃŽ поŃŃ‚Đ°Đ˛ĐşŃ Đ“Đ»Đ°Đ˛Đ˝ĐľĐłĐľ компонента, но не являющееŃŃŹ его чаŃŃ‚ŃŚŃŽ, и (б) ŃĐ»Ńжащее только для иŃпользования Đ´Ń€Ńгих произведений Ń Đ“Đ»Đ°Đ˛Đ˝Ń‹ĐĽ Компонентом, либо для предоŃтавления Стандартного ĐнтерфейŃĐ°, который Đ´ĐľŃŃ‚Ńпен общеŃтвенноŃти в форме иŃходного кода. "Главный Компонент" в этом контекŃте означает главный ŃŃщеŃтвенный компонент (ядро, оконная ŃиŃтема и Ń‚.Đ´.) конкретной операционной ŃиŃтемы (еŃли приŃŃŃ‚ŃтвŃет) на которой выполняетŃŃŹ произведение, либо компилятор, иŃпользованный для Ńоздания произведения, либо интерпретатор объектного кода, иŃпользованный для Đ·Đ°ĐżŃŃка произведения. </p><p>"СоответŃтвŃющий ĐŃходный Код" произведения в форме объектного кода подразŃмевает веŃŃŚ иŃходный код, необходимый для генерации, ŃŃтановки, выполнения(для выполнимых произведений) объектного кода и модификации произведения, включая Ńкрипты, контролирŃющие эти дейŃтвия. Однако, он не Ńодержит СиŃтемные Библиотеки произведения, Ńтилиты общего назначения или Ńвободно Đ´ĐľŃŃ‚Ńпные программы, которые иŃпользовалиŃŃŚ в немодифицированном виде для ĐľŃŃщеŃтвления деятельноŃти, но не являютŃŃŹ чаŃŃ‚ŃŚŃŽ произведения. Например, СоответŃтвŃющий ĐŃходный Код включает файлы определения интерфейŃĐ°, Ńвязанные Ń Ń„Đ°ĐąĐ»Đ°ĐĽĐ¸ иŃходного кода произведения, и иŃходный код общих библиотек и динамичеŃки Ńвязанных подпрограмм, которые необходимы по идее автора произведения, таких как прямая передача данных или контрольный поток ĐĽĐµĐ¶Đ´Ń ŃŤŃ‚Đ¸ĐĽĐ¸ подпрограммами и Đ´Ń€Ńгими чаŃтями произведения. </p><p>СоответŃтвŃющий ĐŃходный Код не обязан включать в Ńебя что-либо, что пользователь может автоматичеŃки Ńгенерировать из ĐľŃтальных чаŃтей СоответŃтвŃющего ĐŃходного Кода. </p><p>СоответŃтвŃющий ĐŃходный Код произведения в форме иŃходного кода - Ń‚Đľ же Ńамое произведение. </p><h5><a name="2._ĐžŃновные_Ńвободы"></a>2. ĐžŃновные Ńвободы<a href="#2._%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5_%D1%81%D0%B2%D0%BE%D0%B1%D0%BE%D0%B4%D1%8B" class="section_anchor"></a></h5><p>Đ’Ńе права, предоŃтавленные Данной Лицензией предоŃтавляютŃŃŹ на Ńрок авторŃких прав на ĐźŃ€ĐľĐłŃ€Đ°ĐĽĐĽŃ Đ¸ не могŃŃ‚ быть отозваны при ŃŃловии, что ŃŃтановленные ŃŃловия Ńоблюдены. Данная Лицензия однозначно подтверждает Đ’Đ°Ńи неограниченные права на Đ·Đ°ĐżŃŃĐş немодифицированной Программы. ДейŃтвие Данной Лицензии на вывод произведения, защищённого Данной Лицензией, раŃпроŃтраняетŃŃŹ только в том ŃĐ»Ńчае, еŃли вывод предŃтавляет Ńобой лицензированное произведение. Данная Лицензия признаёт Đ’Đ°Ńи права на Ńвободное иŃпользование или его эквивалент в ŃоответŃтвии Ń Đ·Đ°ĐşĐľĐ˝ĐľĐĽ об авторŃком праве. </p><p>Đ’Ń‹ можете Ńоздавать, Đ·Đ°ĐżŃŃкать и тиражировать лицензированные произведения, которые Đ’Ń‹ не передаёте, без ŃŃловий, Đ´Đľ тех пор, пока лицензия ĐľŃŃ‚Đ°Ń‘Ń‚ŃŃŹ в Ńиле. Đ’Ń‹ можете передать лицензированное произведение третьим лицам Ń ĐµĐ´Đ¸Đ˝Ńтвенной целью - модификацией произведения иŃключительно для Đ’Đ°Ń, либо для предоŃтавления Đ’Đ°ĐĽ возможноŃти Đ·Đ°ĐżŃŃка этих произведений, при ŃŃловии что Đ’Ń‹ выполняете ŃŃловия Данной Лицензии при передаче материалов, на которые не обладаете авторŃким правом. Третьи лица, Ńоздающие или Đ·Đ°ĐżŃŃкающие лицензированные произведения должны делать ŃŤŃ‚Đľ иŃключительно от Đ’Đ°Ńего имени, под Đ’Đ°Ńим контролем, на ŃŃловиях запрета Ńоздания копий материалов, защищённых авторŃким правом, без Đ’Đ°Ńего разреŃения. </p><p>Передача при любых Đ´Ń€Ńгих обŃтоятельŃтвах разреŃена иŃключительно при ŃŃловиях, ŃŃтановленных ниже. СŃблицензирование запрещено; Ńекция 10 иŃключает необходимоŃŃ‚ŃŚ в этом. </p><h5><a name="3._Защита_Законных_Прав_Пользовател"></a>3. Защита Законных Прав Пользователей от ПротивотехничеŃких Законов<a href="#3._%D0%97%D0%B0%D1%89%D0%B8%D1%82%D0%B0_%D0%97%D0%B0%D0%BA%D0%BE%D0%BD%D0%BD%D1%8B%D1%85_%D0%9F%D1%80%D0%B0%D0%B2_%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB" class="section_anchor"></a></h5><p>Ни одно из лицензированных произведений не должно ŃчитатьŃŃŹ чаŃŃ‚ŃŚŃŽ техничеŃкого ŃредŃтва защиты ŃоглаŃно Đ»ŃŽĐ±ĐľĐĽŃ ĐżŃ€Đ¸ĐĽĐµĐ˝Đ¸ĐĽĐľĐĽŃ Đ·Đ°ĐşĐľĐ˝Ń, Đ˛Ń‹ĐżĐľĐ»Đ˝ŃŹŃŽŃ‰ĐµĐĽŃ ĐľĐ±ŃŹĐ·Đ°Ń‚ĐµĐ»ŃŚŃтва, наложенные ŃŃ‚Đ°Ń‚ŃŚŃ‘Đą 11 ŃоглаŃения авторŃкого права Đ’Ńемирной Организации ĐнтеллектŃальной СобŃтвенноŃти (<a href="http://en.wikipedia.org/wiki/WIPO" rel="nofollow">WIPO</a>), принятой 20 декабря 1996 года, или Ńхожим законам, запрещающим или ограничивающим обход таких ŃредŃтв. </p><p>При передаче Вами лицензированного произведения, Đ’Ń‹ отказываетеŃŃŚ от каких-либо юридичеŃких полномочий запрещать обход техничеŃких ŃредŃтв, пока такой обход находитŃŃŹ в рамках ĐľŃŃщеŃтвления прав, выданных Данной Лицензии, в знак Ńважения Đş Đ»Đ¸Ń†ĐµĐ˝Đ·Đ¸Ń€ĐľĐ˛Đ°Đ˝Đ˝ĐľĐĽŃ ĐżŃ€ĐľĐ¸Đ·Đ˛ĐµĐ´ĐµĐ˝Đ¸ŃŽ, и Đ’Ń‹ отказываетеŃŃŚ от любых намерений ограничить Ń€Đ°Đ±ĐľŃ‚Ń Đ¸Đ»Đ¸ модификацию произведения, как ŃредŃтв давления, направленных на пользователей произведения, Đ’Đ°Ńи законные права и права третьих лиц запретить обход технологичеŃких ŃредŃтв защиты. </p><h5><a name="4._Передача_Точных_Копий"></a>4. Передача Точных Копий<a href="#4._%D0%9F%D0%B5%D1%80%D0%B5%D0%B4%D0%B0%D1%87%D0%B0_%D0%A2%D0%BE%D1%87%D0%BD%D1%8B%D1%85_%D0%9A%D0%BE%D0%BF%D0%B8%D0%B9" class="section_anchor"></a></h5><p>Đ’Ń‹ можете передавать точные копии иŃходного кода Программы Ń‚Đ°Đş же, как и полŃчили, на любом ноŃителе, при ŃŃловии что в заметной и ŃоответŃтвŃющей форме ĐżŃбликŃете Ńведомление об авторŃком праве на каждой копии; Ńохраняете нетронŃтыми вŃе Ńведомления, ŃŃтанавливающие что Данная Лицензия и любые неразреŃающие ŃŃловия, добавленные в ŃоответŃтвии Ń ĐłĐ»Đ°Đ˛ĐľĐą 7, применимы Đş текŃŃ‚Ń ĐżŃ€ĐľĐłŃ€Đ°ĐĽĐĽŃ‹; Ńохраняете нетронŃтыми вŃе Ńведомления об отŃŃŃ‚Ńтвии гарантий; предоŃтавляете вŃем полŃчателям копию Данной Лицензии вмеŃте Ń ĐźŃ€ĐľĐłŃ€Đ°ĐĽĐĽĐľĐą. </p><p>Đ’Ń‹ можете ŃŃтановить любŃŃŽ ценŃ, либо не ŃŃтанавливать ценŃ, Đ·Đ° каждŃŃŽ копию, которŃŃŽ Đ’Ń‹ передаёте, также Đ’Ń‹ можете предлагать ĐżĐľĐ´Đ´ĐµŃ€Đ¶ĐşŃ Đ¸Đ»Đ¸ гарантии Đ·Đ° платŃ. </p><h5><a name="5._Передача_ВерŃий_Модифицированно�"></a>5. Передача ВерŃий Модифицированного иŃходного кода<a href="#5._%D0%9F%D0%B5%D1%80%D0%B5%D0%B4%D0%B0%D1%87%D0%B0_%D0%92%D0%B5%D1%80%D1%81%D0%B8%D0%B9_%D0%9C%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D1%86%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%EF%BF%BD" class="section_anchor"></a></h5><p>Đ’Ń‹ можете передавать произведения, ĐľŃнованные на Программе, или модификации программы в форме иŃходного кода на ŃŃловиях главы 4, также выполняя ŃледŃющие ŃŃловия: </p><blockquote>a) Произведение должно Ńодержать заметные Ńведомления, Ńтверждающие что Đ’Ń‹ изменили код, и Ńодержащие дейŃтвительнŃŃŽ Đ´Đ°Ń‚Ń Đ¸Đ·ĐĽĐµĐ˝ĐµĐ˝Đ¸Đą. +</blockquote><blockquote>б) Произведение должно Ńодержать заметные Ńведомления, Ńтверждающие что оно выпŃщена в ŃоответŃтвии Ń Đ”Đ°Đ˝Đ˝ĐľĐą Лицензией и любыми дополнительными ŃŃловиями, ŃŃтановленными в ŃоответŃтвии Ń ĐłĐ»Đ°Đ˛ĐľĐą 7. Данное требование изменяет требование Ńекции 4 "ĐľŃтавлять нетронŃтыми вŃе Ńведомления". +</blockquote><blockquote>в) Đ’Ń‹ должны выдать лицензии на произведение, как единое целое, в ŃоответŃтвии Ń Đ”Đ°Đ˝Đ˝ĐľĐą Лицензией, вŃем, кто захочет полŃчить копию. Данная Лицензия раŃпроŃтранятьŃŃŹ ŃĐľ вŃеми применимыми ŃŃловиями главы 7, на вŃŃ‘ произведение, и каждŃŃŽ его чаŃŃ‚ŃŚ, безотноŃительно того, как они поŃтавляютŃŃŹ. Данная Лицензия не допŃŃкает выдачи лицензий на произведение Đ´Ń€Ńгими ŃпоŃобами, но не запрещает этого, еŃли Đ’Ń‹ полŃчили разреŃение на Đ˛Ń‹Đ´Đ°Ń‡Ń Đ»Đ¸Ń†ĐµĐ˝Đ·Đ¸Đą отдельно. +</blockquote><blockquote>Đł) Đ•Ńли в произведении приŃŃŃ‚ŃтвŃŃŽŃ‚ пользовательŃкие интерфейŃŃ‹, каждый должен отображать "СоответŃтвŃющие Правовые Уведомления"; еŃли же Программа имеет пользовательŃкие интерфейŃŃ‹, которые не отображают "СоответŃтвŃющие Правовые Уведомления", Đ’Đ°Ńе произведение должно ŃŤŃ‚Đľ иŃправить. +</blockquote><p>Компиляция лицензированного произведения Ń Đ´Ń€Ńгими отдельными и незавиŃимыми произведениями, которые по Ńвоей природе не являютŃŃŹ раŃŃирениями лицензированного произведения и не Ńоединены Ń Đ˝Đ¸ĐĽ Ń Ń†ĐµĐ»ŃŚŃŽ Ńформировать больŃŃŃŽ программŃ, на ноŃителе хранения или раŃпроŃтранения, называетŃŃŹ "агрегацией", еŃли компиляция и её ŃŃммарные авторŃкие права не ограничивают Đ´ĐľŃŃ‚ŃĐż и юридичеŃкие права пользователя компиляции отноŃительно иŃходного произведения. Включение лицензированного произведения в агрегацию не раŃпроŃтраняет дейŃтвие Данной Лицензии на ĐľŃтальные чаŃти агрегации. </p><h5><a name="6._Передача_не-иŃходных_форм"></a>6. Передача не-иŃходных форм<a href="#6._%D0%9F%D0%B5%D1%80%D0%B5%D0%B4%D0%B0%D1%87%D0%B0_%D0%BD%D0%B5-%D0%B8%D1%81%D1%85%D0%BE%D0%B4%D0%BD%D1%8B%D1%85_%D1%84%D0%BE%D1%80%D0%BC" class="section_anchor"></a></h5><p>Đ’Ń‹ можете передавать лицензированные произведения в форме объектного кода на ŃŃловиях глав 4 и 5, в том ŃĐ»Ńчае еŃли Đ’Ń‹ также передаёте ĐĽĐ°Ńиночитаемый СоответŃтвŃющий ĐŃходный Код на ŃŃловиях Данной Лицензии, одним из ŃледŃющих ĐżŃтей: </p><blockquote>Đ°) Передаёте объектный код в (или вŃтроенным в) физичеŃком продŃкте (включая физичеŃкий диŃтрибŃтивный ноŃитель) вмеŃте Ń ĐˇĐľĐľŃ‚Đ˛ĐµŃ‚ŃтвŃющим ĐŃходным Кодом, раŃположенным на физичеŃком ноŃителе, Ńироко иŃпользŃемом для обмена ПО. +</blockquote><blockquote>б) Передаёте объектный код в (или вŃтроенным в) физичеŃком продŃкте (включая физичеŃкий диŃтрибŃтивный ноŃитель) вмеŃте Ń ĐżĐ¸Ńьменным обещанием, дейŃтвительным по меньŃей мере в течение трёх лет и Đ´Đľ тех пор, пока Đ’Ń‹ предоŃтавляете запаŃные чаŃти или ĐżĐľĐ´Đ´ĐµŃ€Đ¶ĐşŃ Đ´Đ»ŃŹ данной модели продŃкта, предоŃтавить Đ»ŃŽĐ±ĐľĐĽŃ ĐľĐ±Đ»Đ°Đ´Đ°Ń‚ĐµĐ»ŃŽ объектного кода либо (1) копию СоответŃтвŃющего ĐŃходного Кода для вŃего ПО продŃкта, лицензированного Данной Лицензией, на физичеŃком ноŃителе, Ńироко иŃпользŃемом для обмена ПО, по цене, не превыŃающей физичеŃкие затраты на ĐżĐµŃ€ĐµĐ´Đ°Ń‡Ń Đ¸Ńходного кода, либо (2) возможноŃŃ‚ŃŚ Ńкопировать СоответŃтвŃющий ĐŃходный Код Ń Ńетевого Ńервера без взимания платы. +</blockquote><blockquote>в) Передаёте перŃональные копии объектного кода Ń ĐşĐľĐżĐ¸ĐµĐą пиŃьменного обещания предоŃтавить СоответŃтвŃющий ĐŃходный Код. Данный ŃпоŃоб разреŃŃ‘Đ˝ только в редких ŃĐ»Ńчаях и на некоммерчеŃкой ĐľŃнове, только еŃли Đ’Ń‹ полŃчили объектный код в такой форме, в ŃоответŃтвии Ń ĐżŃнктом 6б. +</blockquote><blockquote>Đł) Передаёте объектный код, предоŃтавляя Đ´ĐľŃŃ‚ŃĐż из обозначенного меŃŃ‚Đ° (беŃплатно, либо Đ·Đ° определённŃŃŽ платŃ) и предоŃтавляете аналогичный Đ´ĐľŃŃ‚ŃĐż Đş СоответŃтвŃŃŽŃ‰ĐµĐĽŃ ĐŃŃ…ĐľĐ´Đ˝ĐľĐĽŃ ĐšĐľĐ´Ń Ń‚ĐµĐĽ же ĐżŃŃ‚Ń‘ĐĽ, из того же меŃŃ‚Đ°, без поŃледŃющей оплаты. Нет необходимоŃти предоŃтавлять СоответŃтвŃющий ĐŃходный Код в комплекте Ń ĐľĐ±ŃŠĐµĐşŃ‚Đ˝Ń‹ĐĽ кодом. Đ•Ńли меŃтом Đ´ĐľŃŃ‚Ńпа являетŃŃŹ Ńетевой Ńервер, СоответŃтвŃющий ĐŃходный Код может находитьŃŃŹ на Đ´Ń€Ńгом Ńервере (обŃĐ»Ńживаемом Вами, либо третьими лицами), предоŃтавляющем аналогичные возможноŃти копирования; объектный код должен ŃопровождатьŃŃŹ ŃŹŃными Ńказаниями меŃтоположения СоответŃтвŃющего ĐŃходного Кода. НезавиŃимо от того, на каком Ńервере раŃположен СоответŃтвŃющий ĐŃходный Код, Đ’Ń‹ обязаны ŃбедитьŃŃŹ в том, что он Đ´ĐľŃŃ‚Ńпен Ńтолько, Ńколько необходимо для ŃоответŃтвия данным требованиям. +</blockquote><blockquote>Đ´) Передаёте объектный код, иŃпользŃŃŹ ĐżĐµŃ€ĐµĐ´Đ°Ń‡Ń ĐľŃ‚ пользователя Đş пользователю (peer-to-peer), Ńообщая пользователям где объектный код и СоответŃтвŃющий ĐŃходный Код общедоŃŃ‚Ńпен без взимания платы ŃоглаŃно ĐżŃĐ˝ĐşŃ‚Ń 6Đł. +</blockquote><p>Нет необходимоŃти включать в ĐżĐµŃ€ĐµĐ´Đ°Ń‡Ń ĐżŃ€ĐľĐ¸Đ·Đ˛ĐµĐ´ĐµĐ˝Đ¸ŃŹ в форме объектного кода отделимые чаŃти объектного кода, чей иŃходный код иŃключён из СоответŃтвŃющего ĐŃходного Кода как СиŃтемная Библиотека. </p><p>"ПользовательŃкий ПродŃкт" ŃŤŃ‚Đľ либо (1) "потребительŃкий товар", подразŃмевающий любые формы материального личного имŃщеŃтва, которые иŃпользŃŃŽŃ‚ŃŃŹ для личных, Ńемейных или домовладельчеŃких целей, либо (2) что-либо Ńпроектированное или продающееŃŃŹ для ŃŃтановки дома. При определении являетŃŃŹ ли продŃкт потребительŃким товаром, ŃĐ»Ńчаи, вызывающие Ńомнения, бŃĐ´ŃŃ‚ реŃены в ĐżĐľĐ»ŃŚĐ·Ń Đ»Đ¸Ń†ĐµĐ˝Đ·Đ¸Ń€ĐľĐ˛Đ°Đ˝Đ¸ŃŹ. Для конкретного продŃкта, полŃченного конкретным пользователем, "обычное иŃпользование" подразŃмевает типичное или раŃпроŃтранённое иŃпользование такого типа продŃктов, безотноŃительно ŃŃ‚Đ°Ń‚ŃŃĐ° конкретного пользователя или того, как конкретный пользователь иŃпользŃет, или раŃŃчитывает, или бŃдет иŃпользовать продŃкт. ПродŃкт являетŃŃŹ потребительŃким товаром безотноŃительно того, имеет ли он ŃŃщеŃтвенные коммерчеŃкие, промыŃленные или непотребительŃкие применения Đ´Đľ тех пор, пока такие применения не являютŃŃŹ единŃтвенными ŃŃщеŃтвенными применениями продŃкта. </p><p>"ĐŁŃтановочная Đнформация" ПользовательŃкого ПродŃкта подразŃмевает методы, процедŃры, ключи Đ´ĐľŃŃ‚Ńпа и Đ´Ń€ŃĐłŃŃŽ информацию, необходимŃŃŽ для ŃŃтановки и Đ·Đ°ĐżŃŃка модифицированных верŃий лицензированного произведения в ПользовательŃком ПродŃкте из модифицированной верŃий СоответŃтвŃющего ĐŃходного Кода. Đнформация должна быть Đ´ĐľŃтаточна для гарантирования того, что Ńтандартный Ń„Ńнкционал изменённого объектного кода ни в каком ŃĐ»Ńчае не ограничиваетŃŃŹ или иŃкажаетŃŃŹ из-Đ·Đ° произведённых изменений. </p><p>Đ•Ńли Đ’Ń‹ передаёте объектный код ŃоглаŃно данной главе б, или в, или иŃключительно для иŃпользования в ПользовательŃком ПродŃкте, и передача проиŃходит как чаŃŃ‚ŃŚ Ńделки, в которой права владения и иŃпользования ПользовательŃкого ПродŃкта переходят полŃчателю пожизненно либо на определённый Ńрок (безотноŃительно того, как характеризована Ńделка), СоответŃтвŃющий ĐŃходный Код, передаваемый ŃоглаŃно данной главе должен быть Ńопровождён ĐŁŃтановочной Đнформацией. Данное требование не дейŃтвŃет еŃли ни Đ’Ń‹, ни третьи лица не имеете возможноŃти ŃŃтановить модифицированный объектный код на ПользовательŃкий ПродŃкт (например, произведение ŃŃтановлено в ROM). </p><p>Требование предоŃтавления ĐŁŃтановочной Đнформации не включает требование предоŃтавления поддержки, гарантии или обновлений на произведения, которое было модифицировано либо ŃŃтановлено полŃчателем, или для ПользовательŃкого ПродŃкта, в котором произведение модифицировано или ŃŃтановлено. ДоŃŃ‚ŃĐż Đş Ńети может быть запрещён, еŃли ŃĐ°ĐĽĐ° модификация ŃŃщеŃтвенно и негативно дейŃтвŃет на Ń€Đ°Đ±ĐľŃ‚Ń Ńети, либо нарŃŃает правила и протоколы передачи данных в Ńети. </p><p>ПредоŃтавленные СоответŃтвŃющий ĐŃходный Код и ĐŁŃтановочная Đнформация в ŃоответŃтвии Ń Đ´Đ°Đ˝Đ˝ĐľĐą главой должны быть в открыто-докŃментированном формате(имеющем реализацию, Đ´ĐľŃŃ‚ŃпнŃŃŽ в форме иŃходного кода), и не должны запраŃивать пароля либо ключа для раŃпаковки, чтения или копирования. </p><h5><a name="7._Дополнительные_Ńвободы"></a>7. Дополнительные Ńвободы<a href="#7._%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D1%81%D0%B2%D0%BE%D0%B1%D0%BE%D0%B4%D1%8B" class="section_anchor"></a></h5><p>"Дополнительные Ńвободы" - ŃŤŃ‚Đľ ŃŃловия, которые дополняют ДаннŃŃŽ Лицензию ĐżŃŃ‚Ń‘ĐĽ Ńоздания иŃключений из одного или неŃкольких ŃŃловий. Дополнительные Ńвободы, применимые ко вŃей Программе, должны быть раŃценены как еŃли бы они были включены в ДаннŃŃŽ Лицензию, в ŃĐ»Ńчае еŃли они дейŃтвительны ŃоглаŃно ĐżŃ€Đ¸ĐĽĐµĐ˝Đ¸ĐĽĐľĐĽŃ Đ·Đ°ĐşĐľĐ˝Ń. Đ•Ńли дополнительные Ńвободы применяютŃŃŹ только Đş чаŃти Программы, ŃŤŃ‚Đ° чаŃŃ‚ŃŚ может быть иŃпользована отдельно на этих ŃŃловиях, но вŃŃŹ Программа ĐľŃŃ‚Đ°Ń‘Ń‚ŃŃŹ под дейŃтвием Данной лицензии без Ńчёта дополнительных ŃŃловий. </p><p>Когда Đ’Ń‹ передаёте копию лицензированного произведения, Đ’Ń‹ имеете право Ńбрать любые дополнительные Ńвободы из этой копии, либо из любой её чаŃти. (Дополнительные Ńвободы могŃŃ‚ требовать их Ńдаления в конкретных ŃĐ»Ńчаях когда Đ’Ń‹ модифицирŃете произведение.) Đ’Ń‹ можете добавить дополнительные Ńвободы Đş материалам, добавленным Вами в лицензированное произведение и на которые Đ’Ń‹ имеете или можете предоŃтавить разреŃение правообладателя. </p><p>НеŃмотря на любые Đ´Ń€Ńгие положения Данной Лицензии, на материал, добавленный Вами Đş Đ»Đ¸Ń†ĐµĐ˝Đ·Đ¸Ń€ĐľĐ˛Đ°Đ˝Đ˝ĐľĐĽŃ ĐżŃ€ĐľĐ¸Đ·Đ˛ĐµĐ´ĐµĐ˝Đ¸ŃŽ, Đ’Ń‹ можете (еŃли разреŃено держателями авторŃких прав на материал) дополнить ŃŃловия Данной Лицензии ŃледŃющими ŃŃловиями: </p><blockquote>Đ°) Отказ от гарантий или ограничения ответŃтвенноŃти иначе, чем ŃŃтановлено в главах 15 и 16 данной лицензии; либо +</blockquote><blockquote>б) Требование Ńохранения определённых дейŃтвительных юридичеŃких Ńведомлений или авторŃтва в материале, или в СоответŃтвŃющих Правовых Уведомлениях, отображаемых произведением, их Ńодержащим; либо +</blockquote><blockquote>в) Запрет на иŃкажение оригинального материала, либо требование Đş модифицированным верŃиям такого материала Ńодержать ĐżĐľĐĽĐµŃ‚ĐşŃ Đ˛ надлежащей форме Đľ том, что материал отличаетŃŃŹ от оригинальной верŃии; либо +</blockquote><blockquote>Đł) Ограничение на иŃпользование, в целях ĐżŃбликации, имён лицензоров либо авторов материала; либо +</blockquote><blockquote>Đ´) Отказ предоŃтавлять права ŃоглаŃно Đ·Đ°ĐşĐľĐ˝Ń Đľ торговых марках на иŃпользование некоторых торговых имён, торговых марок, ŃервиŃных марок; либо +</blockquote><blockquote>е) Требование компенŃации лицензорам и авторам материала кем либо, кто передаёт материал (или модифицированные верŃии материала) Ń Đ´ĐľĐłĐľĐ˛ĐľŃ€Đ˝Ń‹ĐĽ принятием ответŃтвенноŃти полŃчателем, для любой ответŃтвенноŃти, которŃŃŽ данное договорное принятие непоŃредŃтвенно налагает на правообладателей и авторов. +</blockquote><p>Đ’Ńе ĐľŃтальные не-разреŃающие дополнительные ŃŃловия ŃчитаютŃŃŹ "дополнительными запретами", что попадает под дейŃтвие главы 10. Đ•Ńли Программа в том виде, в котором Đ’Ń‹ её полŃчили, либо её чаŃŃ‚ŃŚ, Ńодержит Ńведомление, ŃŃтанавливающее, что она защищена Данной Лицензией и при этом Ńодержит дополнительные запреты, Đ’Ń‹ можете Ńдалить данные запреты. Đ•Ńли докŃмент лицензии Ńодержит дополнительные запреты, но допŃŃкает релицензирование или ĐżĐµŃ€ĐµĐ´Đ°Ń‡Ń Đ˝Đ° ŃŃловиях Данной Лицензии, Đ’Ń‹ можете добавить Đş Đ»Đ¸Ń†ĐµĐ˝Đ·Đ¸Ń€ĐľĐ˛Đ°Đ˝Đ˝ĐľĐĽŃ ĐżŃ€ĐľĐ¸Đ·Đ˛ĐµĐ´ĐµĐ˝Đ¸ŃŽ материал, защищённый ŃŃловиями того лицензионного докŃмента, при ŃŃловии что дополнительный запрет не ŃохраняетŃŃŹ при таком релицензировании или передаче. </p><p>Đ•Ńли Đ’Ń‹ добавляете ŃŃловия в лицензированное произведение в ŃоответŃтвии Ń Đ´Đ°Đ˝Đ˝ĐľĐą главой, Đ’Ń‹ должны добавить в затронŃтые иŃходные файлы, Ńтверждение Đľ том, что дополнительные ŃŃловия применяютŃŃŹ Đş этим файлам, Đ° также Ńведомление Đľ том где иŃкать данные ŃŃловия. </p><p>Дополнительные ŃŃловия, разреŃающие либо неразреŃающие, могŃŃ‚ быть ŃŃтановлены в форме отдельной лицензии, либо ŃŃтановлены как иŃключения; требования, перечиŃленные Đ’Ń‹Ńе применяютŃŃŹ в любом ŃĐ»Ńчае. </p><h5><a name="8._Окончание_дейŃтвия"></a>8. Окончание дейŃтвия<a href="#8._%D0%9E%D0%BA%D0%BE%D0%BD%D1%87%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D1%8F" class="section_anchor"></a></h5><p>Đ’Ń‹ не можете тиражировать или изменять лицензированное произведение, Đ·Đ° иŃключением тех ŃĐ»Ńчаев когда ŃŤŃ‚Đľ в прямой форме изложено в ŃŃловиях Данной Лицензии. Любая попытка тиражирования или модификации произведения на иных ŃŃловиях недейŃтвительна и автоматичеŃки Ńнимает Ń Đ’Đ°Ń Đ˛Ńе права выданные Данной Лицензией (включая любые патенты, предоŃтавленные лицензией ŃоглаŃно Ń‚Ń€ĐµŃ‚ŃŚĐµĐĽŃ ĐżĐ°Ń€Đ°ĐłŃ€Đ°Ń„Ń ĐłĐ»Đ°Đ˛Ń‹ 11). </p><p>Однако, в том ŃĐ»Ńчае, когда Đ’Ń‹ прекращаете нарŃŃение Данной Лицензии, лицензия от конкретного правообладателя воŃŃтанавливаетŃŃŹ (Đ°) временно, Đ´Đľ тех пор пока правообладатель явно и окончательно не окончит дейŃтвие Đ’Đ°Ńей лицензии, и (б) на поŃтоянной ĐľŃнове, еŃли правообладателю не ŃĐ´Đ°ŃŃ‚ŃŃŹ Ńведомить Đ’Đ°Ń Đľ нарŃŃении Ń ĐżĐľĐĽĐľŃ‰ŃŚŃŽ надлежащих ŃредŃтв в Ńрок 60 дней Ń ĐĽĐľĐĽĐµĐ˝Ń‚Đ° прекращения нарŃŃений. </p><p>Кроме того, Đ’Đ°ŃĐ° лицензия от конкретного правообладателя воŃŃтанавливаетŃŃŹ на поŃтоянной ĐľŃнове в ŃĐ»Ńчае еŃли правообладатель Ńведомляет Đ’Đ°Ń Đľ нарŃŃении Ń ĐżĐľĐĽĐľŃ‰ŃŚŃŽ надлежащих ŃредŃтв, но Đ’Ń‹ впервые полŃчаете Ńведомление Đľ нарŃŃении Данной Лицензии (для любого произведения) от этого правообладателя и ŃŃтраняете нарŃŃение в течение 30 дней поŃле полŃчения Ńведомления. </p><p>ЛиŃение Đ’Đ°Ń ĐżŃ€Đ°Đ˛ ŃоглаŃно данной Ńекции не лиŃает прав людей, которые полŃчили от Đ’Đ°Ń ĐşĐľĐżĐ¸Đ¸ или права ŃоглаŃно Данной Лицензией. Đ•Ńли Đ’Đ°Ńи права приоŃтановлены и не воŃŃтановлены на поŃтоянной ĐľŃнове, Đ’Ń‹ не можете полŃчить новŃŃŽ лицензию на тот же материал ŃоглаŃно главе 10. </p><h5><a name="9._СоглаŃение_не_требŃетŃŃŹ_для_копи�"></a>9. СоглаŃение не требŃетŃŃŹ для копирования<a href="#9._%D0%A1%D0%BE%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BD%D0%B5_%D1%82%D1%80%D0%B5%D0%B1%D1%83%D0%B5%D1%82%D1%81%D1%8F_%D0%B4%D0%BB%D1%8F_%D0%BA%D0%BE%D0%BF%D0%B8%EF%BF%BD" class="section_anchor"></a></h5><p>Đ’Ń‹ не обязаны принимать ДаннŃŃŽ Лицензию чтобы полŃчить или Đ·Đ°ĐżŃŃтить копию Программы. Đ’ дополнении, тиражирование лицензированного произведения, проиŃходящее иŃключительно как ŃовокŃпноŃŃ‚ŃŚ передач от пользователя Đş пользователю, требŃемых для полŃчения копии также не требŃет ŃоглаŃения. Однако, только Данная Лицензия Đ´Đ°Ń‘Ń‚ Đ’Đ°ĐĽ права тиражирования или изменения любых лицензированных произведений. Такие дейŃтвия нарŃŃĐ°ŃŽŃ‚ авторŃкое право, еŃли Đ’Ń‹ не приняли ДаннŃŃŽ Лицензию. ĐźĐľŃŤŃ‚ĐľĐĽŃ Đ¸Đ·ĐĽĐµĐ˝ŃŹŃŹ или тиражирŃŃŹ лицензированное произведение, Đ’Ń‹ подтверждаете Ńвоё ŃоглаŃие Ń Đ”Đ°Đ˝Đ˝ĐľĐą Лицензией. </p><h5><a name="10._ĐвтоматичеŃкое_Лицензирование_Đź"></a>10. ĐвтоматичеŃкое Лицензирование ПоŃледŃющих ПолŃчателей<a href="#10._%D0%90%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%9F" class="section_anchor"></a></h5><p>Каждый раз, когда Đ’Ń‹ передаёте лицензированное произведение, полŃчатель автоматичеŃки полŃчает лицензию от первоначального лицензора на Đ·Đ°ĐżŃŃĐş, изменение и тиражирование произведения, подчинённого Данной Лицензии. Đ’Ń‹ не ответŃтвенны Đ·Đ° Ńоблюдение Данной Лицензии третьими лицами. </p><p>"ЮридичеŃкая Ńделка" - Ńделка передающая контроль организации, или практичеŃки вŃе активы таковой, или разделение организации, или Ńлияние организаций. Đ•Ńли тиражирование лицензированного произведения являетŃŃŹ резŃльтатом юридичеŃкой Ńделки, каждая Ńторона Ńделки, полŃчающая копию произведения также полŃчает вŃе лицензии на произведение, которые предŃеŃтвенник Ńтороны имел или мог выдать ŃоглаŃно предыдŃŃ‰ĐµĐĽŃ ĐżĐ°Ń€Đ°ĐłŃ€Đ°Ń„Ń, ĐżĐ»ŃŽŃ ĐżŃ€Đ°Đ˛Đľ владения СоответŃтвŃющим ĐŃходным Кодом произведения от предŃеŃтвенника, еŃли он обладал СоответŃтвŃющим ĐŃходным Кодом, либо мог полŃчить его при ŃоответŃтвŃющем запроŃе. </p><p>Đ’Ń‹ не можете налагать никакие дополнительные запреты на ĐľŃŃщеŃтвление прав выданных или подтверждённых ŃоглаŃно Данной Лицензии. Например, Đ’Ń‹ не можете налагать лицензионные Ńборы, авторŃкий гонорар, или Đ´Ń€Ńгие виды выплат Đ·Đ° ĐľŃŃщеŃтвление прав, выданных ŃоглаŃно Данной Лицензии, и Đ’Ń‹ не можете инициировать ŃŃдебный процеŃŃ (включая вŃтречный иŃĐş), заявляя что любое патентное требование нарŃŃено ĐżŃŃ‚Ń‘ĐĽ Ńоздания, иŃпользования, продажи, предложения продажи или импортирования Программы либо любой её чаŃти. </p><h5><a name="11._Патенты"></a>11. Патенты<a href="#11._%D0%9F%D0%B0%D1%82%D0%B5%D0%BD%D1%82%D1%8B" class="section_anchor"></a></h5><p>"Вкладчик" – правообладатель, разреŃающий иŃпользование ŃоглаŃно Данной Лицензии Программы либо произведения, на котором ĐľŃнована Программа. Произведение, лицензированное таким образом, называетŃŃŹ "верŃией вкладчика". </p><p>"ĐžŃновные патентные требования" вкладчика - вŃе патентные требования которые имеет или контролирŃет вкладчик, либо Ńже приобретённые, либо намеченные для приобретения, которые бŃĐ´ŃŃ‚ нарŃŃены тем или иным образом, допŃŃкающимŃŃŹ Данной Лицензией, включая Ńоздание, иŃпользование или продажа верŃии вкладчика, но иŃключая требования, которые бŃĐ´ŃŃ‚ нарŃŃены только в форме ŃовокŃпноŃти бŃĐ´Ńщих изменений верŃии вкладчика. Đ’ рамках данного определения, "контроль" включает в Ńебя право выдавать патентные ŃŃблицензии в форме, ŃледŃющей требованиям Данной Лицензии. </p><p>Каждый вкладчик выдаёт Đ’Đ°ĐĽ неэкŃклюзивные, междŃнародные, Ńвободные от отчиŃлений патентные лицензии, ŃоглаŃно ĐľŃновным патентным требованиям вкладчика, на иŃпользование, продажŃ, предложение продажи, импортирование и Đ·Đ°ĐżŃŃĐş, изменение и тиражирование Ńодержимого верŃии вкладчика. </p><p>Đ’ ŃледŃющих трёх параграфах, "патентная лицензия" - любое выражение ŃоглаŃения или обязательŃтва не применять патент(например, выдача прав на иŃпользование патентованного произведения или обязательŃтво не подавать иŃков Đ·Đ° нарŃŃение патента). "Đ’Ń‹Đ´Đ°Ń‚ŃŚ" Ń‚Đ°ĐşŃŃŽ патентнŃŃŽ лицензию одной из Ńторон означает заключить такое ŃоглаŃение или обязательŃтво не применять патент против этой Ńтороны. </p><p>Đ•Ńли Đ’Ń‹ передаёте лицензированное произведение, Ńознательно ĐľŃновываяŃŃŚ на патентной лицензии и при этом СоответŃтвŃющий ĐŃходный Код произведения не Đ´ĐľŃŃ‚Ńпен Đ˝Đ¸ĐşĐľĐĽŃ Đ´Đ»ŃŹ копирования беŃплатно и в ŃоответŃтвии Ń ŃŃловиями Данной Лицензии через общедоŃŃ‚Ńпный Ńервер или Đ´Ń€Ńгими легкодоŃŃ‚Ńпными методами, Đ’Ń‹ должны либо (1) Ńделать Ń‚Đ°Đş чтобы СоответŃтвŃющий ĐŃходный Код был Đ´ĐľŃŃ‚Ńпен, либо (2) лиŃить Ńебя патентной лицензии на данное конкретное произведение, либо (3) оговорить, ŃоответŃтвŃющим Данной Лицензии образом, раŃŃирение патентной лицензии для поŃледŃющих полŃчателей. "Сознательно ĐľŃновываяŃŃŚ" означает что Đ’Ń‹ знаете ŃŃловия патентной лицензии, но передача лицензированного произведения в Ńтране, либо иŃпользование лицензированного произведения полŃчателями в Ńтране, нарŃŃит один или более патент, который можно идентифицировать, в этой Ńтране и который Đ’Ń‹ имеете ĐľŃнования Ńчитать дейŃтвительным. </p><p>Đ•Ńли в ŃоответŃтвии Ń Đ¸Đ»Đ¸ в Ńвязи Ń ĐşĐľĐ˝ĐşŃ€ĐµŃ‚Đ˝ĐľĐą Ńделкой или ŃоглаŃением Đ’Ń‹ передаёте, тиражирŃете, ĐżŃŃ‚Ń‘ĐĽ наладки передачи, лицензированное произведение и предоŃтавляете одной из Ńторон патентнŃŃŽ лицензию поŃле полŃчения лицензированного произведения, давая им право иŃпользовать, тиражировать, модифицировать или передавать конкретнŃŃŽ копию лицензионного произведения, в этом ŃĐ»Ńчае патентная лицензия, которŃŃŽ Đ’Ń‹ предоŃтавляете автоматичеŃки раŃŃиряет Ńвоё дейŃтвие на вŃех полŃчателей лицензированного произведения ĐľŃнованного на ней. </p><p>Патентная лицензия являетŃŃŹ "диŃкриминационной", еŃли она не опиŃывает Ńвою ŃŃ„ĐµŃ€Ń ĐżŃ€Đ¸ĐĽĐµĐ˝ĐµĐ˝Đ¸ŃŹ, запрещает ĐľŃŃщеŃтвление или обŃŃловлена неоŃŃщеŃтвлением одного или более прав, которые явно выдаютŃŃŹ ŃоглаŃно Данной Лицензии. Đ’Ń‹ не можете передавать лицензированное произведение еŃли Đ’Ń‹ - одна из Ńторон ŃоглаŃения Ń Ń‚Ń€ĐµŃ‚ŃŚĐµĐą Ńтороной, которая занимаетŃŃŹ диŃтрибŃцией ПО, ŃоглаŃно которой Đ’Ń‹ производите Đ˛Ń‹ĐżĐ»Đ°Ń‚Ń Ń‚Ń€ĐµŃ‚ŃŚĐµĐĽŃ Đ»Đ¸Ń†Ń Đ˛ завиŃимоŃти от объёма ĐľŃŃщеŃтвляемых передач, и ŃоглаŃно которой третье лицо выдаёт, любой Ńтороне, полŃчающей лицензированное произведение от Đ’Đ°Ń, диŃкриминационнŃŃŽ патентнŃŃŽ лицензию (Đ°) вмеŃте Ń ĐşĐľĐżĐ¸ŃŹĐĽĐ¸ лицензированного произведения, переданными Вами (или копиями, Ńделанными Ń ŃŤŃ‚Đ¸Ń… копий), или (б) вмеŃте Ń ĐşĐľĐ˝ĐşŃ€ĐµŃ‚Đ˝Ń‹ĐĽĐ¸ продŃктами или Ńборками, Ńодержащими лицензированное произведение, в ŃĐ»Ńчае еŃли Đ’Ń‹ не вŃŃ‚Ńпили в ŃоглаŃение или патентная лицензия не предоŃтавлена Đ´Đľ 28 марта 2007Đł. </p><p>Ничто в Данной Лицензии не должно быть раŃŃмотрено как иŃключение или ограничение любой подразŃмеваемой лицензии или Đ´Ń€Ńгих ŃпоŃобов противодейŃтвия нарŃŃению, которые в Đ´Ń€Ńгих ŃĐ»Ńчаях могŃŃ‚ быть Đ´ĐľŃŃ‚Ńпны для Đ’Đ°Ń ŃоглаŃно ĐżŃ€Đ¸ĐĽĐµĐ˝Đ¸ĐĽĐľĐĽŃ ĐżĐ°Ń‚ĐµĐ˝Ń‚Đ˝ĐľĐĽŃ Đ·Đ°ĐşĐľĐ˝Ń. </p><h5><a name="12._Не_отказывать_Ńвободе_Đ´Ń€Ńгих"></a>12. Не отказывать Ńвободе Đ´Ń€Ńгих<a href="#12._%D0%9D%D0%B5_%D0%BE%D1%82%D0%BA%D0%B0%D0%B7%D1%8B%D0%B2%D0%B0%D1%82%D1%8C_%D1%81%D0%B2%D0%BE%D0%B1%D0%BE%D0%B4%D0%B5_%D0%B4%D1%80%D1%83%D0%B3%D0%B8%D1%85" class="section_anchor"></a></h5><p>ĐŁŃловия, наложенные на Đ’Đ°Ń (ŃŃдебным приказом, ŃоглаŃением или как-либо ещё), которые противоречат ŃŃловиям Данной лицензии, не ĐľŃвобождают Đ’Đ°Ń ĐľŃ‚ ŃŃловий, наложенных Данной Лицензией. Đ•Ńли Đ’Ń‹ не можете передавать лицензированное произведение Ń‚Đ°Đş, чтобы Ńдовлетворять одновременно Đ’Đ°Ńим обязательŃтвам ŃоглаŃно Данной Лицензии и любым Đ´Ń€Ńгим релевантным обязательŃтвам, Ń‚Đľ Đ’Ń‹ можете не раŃпроŃтранять её вовŃе. Например, еŃли Đ’Ń‹ ŃоглаŃны Ń ŃŃловиями, обязывающими Đ’Đ°Ń Ńобирать авторŃкие отчиŃления Ń Ń‚ĐµŃ…, ĐşĐľĐĽŃ Đ’Ń‹ передаёте ПрограммŃ, Đ·Đ° право поŃледŃющей передачи, единŃтвенный ŃпоŃоб Ńдовлетворить этим ŃŃловиям и Данной Лицензии бŃдет полное воздержание от передачи Программы. </p><h5><a name="13._ĐŃпользование_ŃовмеŃтно_ŃĐľ_Стан�"></a>13. ĐŃпользование ŃовмеŃтно ŃĐľ Стандартной ОбщеŃтвенной Лицензией редакции Đфферо<a href="#13._%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D1%81%D0%BE%D0%B2%D0%BC%D0%B5%D1%81%D1%82%D0%BD%D0%BE_%D1%81%D0%BE_%D0%A1%D1%82%D0%B0%D0%BD%EF%BF%BD" class="section_anchor"></a></h5><p>НеŃмотря на любые Đ´Ń€Ńгие положения наŃтоящей Лицензии, Đ’Ń‹ имеете разреŃение подключать или Ńовмещать любое лицензированное произведение Ń ĐżŃ€ĐľĐ¸Đ·Đ˛ĐµĐ´ĐµĐ˝Đ¸ĐµĐĽ, лицензированным ŃоглаŃно верŃии 3 Стандартной ОбщеŃтвенной Лицензии редакции Đфферо (<a href="http://www.affero.org/oagpl.html" rel="nofollow">Affero</a>) в единое комбинированное произведение и передавать его. ĐŁŃловия Данной Лицензии продолжат применятьŃŃŹ Đş той чаŃти произведения, которая изначально находилаŃŃŚ под ней, но Ńпециальные требования главы 13 редакции Đфферо, каŃающиеŃŃŹ взаимодейŃтвия через компьютернŃŃŽ Ńеть, бŃĐ´ŃŃ‚ применятьŃŃŹ ко вŃĐµĐĽŃ ĐľĐ±ŃŠĐµĐ´Đ¸Đ˝Ń‘Đ˝Đ˝ĐľĐĽŃ ĐżŃ€ĐľĐ¸Đ·Đ˛ĐµĐ´ĐµĐ˝Đ¸ŃŽ. </p><h5><a name="14._ПереŃмотренные_ВерŃии_Данной_Ли�"></a>14. ПереŃмотренные ВерŃии Данной Лицензии<a href="#14._%D0%9F%D0%B5%D1%80%D0%B5%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%92%D0%B5%D1%80%D1%81%D0%B8%D0%B8_%D0%94%D0%B0%D0%BD%D0%BD%D0%BE%D0%B9_%D0%9B%D0%B8%EF%BF%BD" class="section_anchor"></a></h5><p>Фонд Свободного Программного ОбеŃпечения может ĐżŃбликовать переŃмотренные и/или новые верŃии Стандартной ОбщеŃтвенной Лицензии GNU время от времени. Такие переŃмотренные верŃии бŃĐ´ŃŃ‚ Ńхожи по Đ´ŃŃ…Ń Đ˝Ń‹Đ˝ĐµŃней верŃии, но могŃŃ‚ отличатьŃŃŹ в деталях, чтобы ŃоответŃтвовать новым проблемам. </p><p>Каждой верŃии выдаётŃŃŹ отличительный номер. Đ•Ńли Программа ŃŃтанавливает, что конкретный номер верŃии GNU GPL "или любая более поздняя верŃия" применима Đş ней, Đ’Ń‹ можете Ńледовать ŃŃловиям либо верŃии Ńказанного номера, либо более поздних верŃий, опŃбликованных Фондом Свободного Программного ОбеŃпечения. Đ•Ńли программа не Ńказывает номер верŃии GNU GPL, Đ’Ń‹ можете выбрать любŃŃŽ верŃию, когда либо опŃбликованнŃŃŽ Фондом. </p><p>Đ•Ńли программа Ńточняет, что Ńполномоченный предŃтавитель может реŃĐ°Ń‚ŃŚ какая из бŃĐ´Ńщих верŃий GNU GPL может быть иŃпользована, ĐżŃбличное заявление этого предŃтавителя Đľ принятии верŃии на поŃтоянной ĐľŃнове Đ´Đ°Ń‘Ń‚ Đ’Đ°ĐĽ право выбрать ŃŤŃ‚Ń Đ˛ĐµŃ€Ńию для Программы. </p><p>СледŃющие верŃии лицензии могŃŃ‚ давать Đ’Đ°ĐĽ дополнительные или Đ´Ń€Ńгие разреŃения. НеŃмотря на ŃŤŃ‚Đľ, дополнительные обязательŃтва не возлагаютŃŃŹ на автора или правообладателя как резŃльтат Đ’Đ°Ńего выбора ŃледŃющих верŃий. </p><h5><a name="15._Отказ_от_гарантий"></a>15. Отказ от гарантий<a href="#15._%D0%9E%D1%82%D0%BA%D0%B0%D0%B7_%D0%BE%D1%82_%D0%B3%D0%B0%D1%80%D0%B0%D0%BD%D1%82%D0%B8%D0%B9" class="section_anchor"></a></h5><p>НРПРОГРĐММУ НЕ Đ ĐСПРОСТРĐНЯЮТСЯ ĐťĐĐšĐĐšĐĐ• Đ“ĐĐ ĐНТĐРДО Đ ĐМОК, ДОПУСТĐМЫХ ПРĐМЕНĐМЫМ Đ—ĐКОНОМ. ЕСЛРĐНОЕ НЕ УСТĐНОВЛЕНО Đ’ ĐźĐСЬМЕННОЙ ФОРМЕ, ПРĐВООБЛĐĐ”ĐТЕЛЬ Đ/ĐЛРДРУГĐĐ• СТОРОНЫ ПРЕДОСТĐВЛЯЮТ ПРОГРĐММУ «КĐĐš ЕСТЬ», Đ‘Đ•Đ— ĐšĐĐšĐĐĄ Đ›ĐĐ‘Đž Đ“ĐĐ ĐНТĐĐ™ (Đ—ĐЯВЛЕННЫХ ĐЛРПОДРĐЗУМЕВĐЕМЫХ), ВКЛЮЧĐĐŻ, НО НЕ ОГРĐĐťĐЧĐĐ’ĐЯСЬ, ПОДРĐЗУМЕВĐЕМЫМРГĐĐ ĐНТĐЯМРТОВĐРНОГО СОСТОЯНĐĐŻ ПРРПРОДĐĐ–Đ• РГОДНОСТРДЛЯ ОПРЕДЕЛĐННОГО ПРĐМЕНЕНĐĐŻ. ВЕСЬ Đ ĐСК ĐšĐĐš Đ’ ОТНОШЕНĐĐ ĐšĐЧЕСТВĐ, ТĐĐš РПРОĐЗВОДĐТЕЛЬНОСТРПРОГРĐММЫ Đ’Đ« Đ‘Đ•Đ ĐТЕ НРСЕБЯ. ЕСЛРВ ПРОГРĐММЕ ОБНĐĐ ĐŁĐ–Đ•Đť ДЕФЕКТ, Đ’Đ« Đ‘Đ•Đ ĐТЕ НРСЕБЯ СТОĐМОСТЬ НЕОБХОДĐМОГО ОБСЛУЖĐĐ’ĐĐťĐĐŻ, ПОЧĐНКРĐЛРĐСПРĐВЛЕНĐĐŻ. </p><h5><a name="16._Ограничение_ответŃтвенноŃти"></a>16. Ограничение ответŃтвенноŃти<a href="#16._%D0%9E%D0%B3%D1%80%D0%B0%D0%BD%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8" class="section_anchor"></a></h5><p>НРВ КОЕМ СЛУЧĐĐ•, ЕСЛРНЕ ТРЕБУЕТСЯ ПРĐМЕНĐМЫМ Đ—ĐКОНОМ ĐЛРПĐСЬМЕННЫМ СОГЛĐШЕНĐĐ•Đś, НРОДĐĐť ĐĐ— ПРĐВООБЛĐĐ”ĐТЕЛЕЙ ĐЛРСТОРОН, ĐЗМЕНЯВШĐĐĄ Đ/ĐЛРПЕРЕДĐĐ’ĐВШĐĐĄ ПРОГРĐММУ, ĐšĐĐš БЫЛО Đ ĐЗРЕШЕНО ВЫШЕ, НЕ ОТВЕТСТВЕНЕН Đ—Đ ĐŁĐ©Đ•Đ Đ‘, ВКЛЮЧĐĐŻ ОБЩĐĐ™, КОНКРЕТНЫЙ, СЛУЧĐЙНЫЙ ĐЛРПОСЛЕДОВĐВШĐĐ™ ĐŁĐ©Đ•Đ Đ‘, ВЫТЕКĐЮЩĐĐ™ ĐĐ— ĐСПОЛЬЗОВĐĐťĐĐŻ ĐЛРНЕВОЗМОЖНОСТРĐСПОЛЬЗОВĐĐťĐĐŻ ПРОГРĐММЫ (ВКЛЮЧĐĐŻ, НО НЕ ОГРĐĐťĐЧĐĐ’ĐЯСЬ ПОТЕРЕЙ Đ”ĐННЫХ ĐЛРНЕВЕРНОЙ ОБРĐБОТКОЙ Đ”ĐННЫХ, ĐЛРПОТЕРĐ, УСТĐНОВЛЕННЫЕ Đ’ĐМРĐЛРТРЕТЬĐМРЛĐЦĐĐśĐ, ĐЛРНЕВОЗМОЖНОСТЬ ПРОГРĐММЫ Đ ĐБОТĐТЬ С ДРУГĐМРПРОГРĐММĐĐśĐ), Đ”ĐĐ–Đ• Đ’ СЛУЧĐĐ• ЕСЛРПРĐВООБЛĐĐ”ĐТЕЛЬ Đ›ĐĐ‘Đž ДРУГĐĐŻ СТОРОНРБЫЛРĐЗВЕЩЕНРО ВОЗМОЖНОСТРТĐКОГО ĐŁĐ©Đ•Đ Đ‘Đ. </p><h5><a name="17._Đнтерпретация_глав_15_и_16"></a>17. Đнтерпретация глав 15 и 16<a href="#17._%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BF%D1%80%D0%B5%D1%82%D0%B0%D1%86%D0%B8%D1%8F_%D0%B3%D0%BB%D0%B0%D0%B2_15_%D0%B8_16" class="section_anchor"></a></h5><p>Đ•Ńли отказ от гарантии или ограничение ответŃтвенноŃти предŃтавленные выŃе не могŃŃ‚ быть иŃполнены ŃоглаŃно их ŃŃловиям, раŃŃматривающие ŃŃĐ´Ń‹ должны применить меŃтный закон, который наиболее приближен Đş абŃĐľĐ»ŃŽŃ‚Đ˝ĐľĐĽŃ ĐľŃ‚ĐşĐ°Đ·Ń ĐľŃ‚ вŃей гражданŃкой ответŃтвенноŃти в Ńвязи Ń ĐźŃ€ĐľĐłŃ€Đ°ĐĽĐĽĐľĐą, иŃключая ŃĐ»Ńчаи когда гарантия или принятие ответŃтвенноŃти Ńопровождают копию Программы Đ·Đ° платŃ. </p><h4><a name="КОНЕЦ_УСЛОВĐĐ™"></a>КОНЕЦ УСЛОВĐĐ™<a href="#%D0%9A%D0%9E%D0%9D%D0%95%D0%A6_%D0%A3%D0%A1%D0%9B%D0%9E%D0%92%D0%98%D0%99" class="section_anchor"></a></h4><h5><a name="Как_применить_данные_ŃŃловия_Đş_Đ’Đ°Ńďż˝"></a>Как применить данные ŃŃловия Đş Đ’Đ°Ńим Новым Программам<a href="#%D0%9A%D0%B0%D0%BA_%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%82%D1%8C_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5_%D1%83%D1%81%D0%BB%D0%BE%D0%B2%D0%B8%D1%8F_%D0%BA_%D0%92%D0%B0%D1%88%EF%BF%BD" class="section_anchor"></a></h5><p>Đ•Ńли Đ’Ń‹ разрабатываете новŃŃŽ ĐżŃ€ĐľĐłŃ€Đ°ĐĽĐĽŃ Đ¸ хотите чтобы она была ĐĽĐ°ĐşŃимально полезна общеŃтвенноŃти, Đ»ŃчŃий ŃпоŃоб добитьŃŃŹ желаемого - Ńделать ĐżŃ€ĐľĐłŃ€Đ°ĐĽĐĽŃ Ńвободным ПО, которое каждый Ńможет раŃпроŃтранять и изменять ŃоглаŃно данным ŃŃловиям. </p><p>Для этого ŃкомплектŃйте ĐżŃ€ĐľĐłŃ€Đ°ĐĽĐĽŃ Đ˝Đ¸Đ¶ĐµŃледŃющими Ńведомлениями. БезопаŃнее вŃего приŃоединить их Đş Đ˝Đ°Ń‡Đ°Đ»Ń ĐşĐ°Đ¶Đ´ĐľĐłĐľ файла иŃходных кодов для наиболее эффективного Ńказания отŃŃŃ‚Ńтвия гарантий; каждый файл должен, по крайней мере, иметь линию авторŃких прав и Ńказатель на нахождение полного ŃпиŃка Ńведомлений. </p><blockquote>&lt;название программы и краткое опиŃание того, что она делает&gt; +</blockquote><blockquote>Copyright (C) &lt;год&gt; &lt;имя автора&gt; +</blockquote><blockquote>Đ­Ń‚Đľ программа являетŃŃŹ Ńвободным программным обеŃпечением. Đ’Ń‹ можете +</blockquote><blockquote>раŃпроŃтранять и/или модифицировать её ŃоглаŃно ŃŃловиям Стандартной +</blockquote><blockquote>ОбщеŃтвенной Лицензии GNU, опŃбликованной Фондом Свободного Программного +</blockquote><blockquote>ОбеŃпечения, верŃии 3 или, по Đ’Đ°ŃĐµĐĽŃ Đ¶ĐµĐ»Đ°Đ˝Đ¸ŃŽ, любой более поздней верŃии. +</blockquote><blockquote>Đ­Ń‚Đ° программа раŃпроŃтраняетŃŃŹ в надежде, что она бŃдет полезной, но Đ‘Đ•Đ— +</blockquote><blockquote>ВСЯКĐĐĄ Đ“ĐĐ ĐНТĐĐ™, в том чиŃле подразŃмеваемых гарантий ТОВĐРНОГО СОСТОЯНĐĐŻ ПРР+</blockquote><blockquote>ПРОДĐĐ–Đ• и ГОДНОСТРДЛЯ ОПРЕДЕЛĐННОГО ПРĐМЕНЕНĐĐŻ. Смотрите СтандартнŃŃŽ +</blockquote><blockquote>ОбщеŃтвеннŃŃŽ Лицензию GNU для полŃчения дополнительной информации. +</blockquote><blockquote>Đ’Ń‹ должны были полŃчить копию Стандартной ОбщеŃтвенной Лицензии GNU вмеŃте +</blockquote><blockquote>Ń ĐżŃ€ĐľĐłŃ€Đ°ĐĽĐĽĐľĐą. Đ’ ŃĐ»Ńчае её отŃŃŃ‚Ńтвия, поŃмотрите &lt;<a href="http://www.gnu.org/licenses/%3E" rel="nofollow">http://www.gnu.org/licenses/&gt;</a>. +</blockquote><p>Так же добавьте информацию Đľ том, как можно ŃвязатьŃŃŹ Ń Đ˛Đ°ĐĽĐ¸ по электронной и обычной почте. </p><p>Đ•Ńли программа взаимодейŃтвŃет Ń ĐżĐľĐ»ŃŚĐ·ĐľĐ˛Đ°Ń‚ĐµĐ»ĐµĐĽ при помощи терминала, Ńделайте Ń‚Đ°Đş, чтобы она выводила краткое Ńообщение наподобие нижеŃледŃющего при Đ·Đ°ĐżŃŃке в интерактивном режиме: </p><blockquote>&lt;название программы&gt; Copyright (C) &lt;год&gt; &lt;имя автора&gt; +</blockquote><blockquote>Đ­Ń‚Đľ программа раŃпроŃтраняетŃŃŹ Đ‘Đ•Đ— ВСЯКĐĐĄ Đ“ĐĐ ĐНТĐĐ™; для полŃчения дополнительной +</blockquote><blockquote>информации наберите <tt>show w</tt>. Đ­Ń‚Đľ Ńвободное программное обеŃпечение, и Đ’Ń‹ можете +</blockquote><blockquote>раŃпроŃтранять её в ŃоответŃтвии Ń ĐşĐľĐ˝ĐşŃ€ĐµŃ‚Đ˝Ń‹ĐĽĐ¸ ŃŃловиями; для полŃчения +</blockquote><blockquote>дополнительной информации наберите <tt>show c</tt>. +</blockquote><p>ГипотетичеŃкие команды <tt>show w</tt> и <tt>show c</tt> должны показывать ŃоответŃтвŃющие чаŃти Стандартной ОбщеŃтвенной Лицензии. Конечно, команды Đ’Đ°Ńей программы могŃŃ‚ быть Đ´Ń€Ńгими; в ŃĐ»Ńчае графичеŃкого интерфейŃĐ° пользователя, Đ’Ń‹ можете иŃпользовать диалоговое окно &lt;Đž программе&gt;. </p><p>Так же, в ŃĐ»Ńчае необходимоŃти, Đ’Đ°ĐĽ ŃледŃет полŃчить от Đ’Đ°Ńего работодателя (еŃли Đ’Ń‹ работаете программиŃтом) или Ńчебного заведения (еŃли ŃчитеŃŃŚ) пиŃьменный отказ от авторŃких прав на программŃ. Для дополнительной информации об этом, Đ° также Đľ применении и иŃполнении ŃŃловий GNU GPL, Ńмотрите &lt;<a href="http://www.gnu.org/licenses/%3E" rel="nofollow">http://www.gnu.org/licenses/&gt;</a>. </p><p>Стандартная ОбщеŃтвенная Лицензия GNU не разреŃает включение Đ’Đ°Ńей программы в ŃобŃтвенничеŃкое ПО. Đ•Ńли Đ’Ń‹ хотите этого, иŃпользŃйте МалŃŃŽ СтандартнŃŃŽ ОбщеŃтвеннŃŃŽ Лицензию GNU (GNU Lesser General Public License, GNU LGPL) вмеŃŃ‚Đľ этой лицензии, но, пожалŃĐąŃŃ‚Đ°, прочитайте Ńначала &lt;<a href="http://www.gnu.org/philosophy/why-not-lgpl.html%3E" rel="nofollow">http://www.gnu.org/philosophy/why-not-lgpl.html&gt;</a>.</p></div></div></td></tr></tbody></table></div></div></body></html> + + + + + Close + Закрыть + + + + Name: + ĐĐĽŃŹ: + + + + Version: + ВерŃия: + + + + Author: + Đвтор: + + + + Website: + ВебŃайт: + + + + Translations: + Переводчики: + + + + For Metatag manipulation + Управление метаданными + + + + Base of the icon set + ĐŃходники значков + + + + Caesium + + + Caesium - Image Compressor + Caesium - Image Compressor + + + + Name + ĐĐĽŃŹ + + + + Size + Размер + + + + New Size + Новый размер + + + + Ratio + Коэффициент + + + + Quality + КачеŃтво + + + + Resolution + РазреŃение + + + + New Resolution + Новое разреŃение + + + + Full Path + Полный ĐżŃŃ‚ŃŚ + + + + Add + Добавить + + + + Remove + Удалить + + + + + Preview + ПроŃмотр + + + + A new version is available! + ДоŃŃ‚Ńпна новая верŃия! + + + + Compression Options + Параметры Ńжатия + + + + Quality: + КачеŃтво: + + + + Same for all + Применить для вŃех + + + + Set Quality + Применить + + + + Format: + Формат: + + + + JPG + JPG + + + + PNG + PNG + + + + BMP + BMP + + + + Resize + Размер изображения + + + + Width: + Ширина: + + + + Height: + Đ’Ń‹Ńота: + + + + Apply + Применить + + + + Keep Aspect Ratio + Сохранить пропорции + + + + px + пикŃ. + + + + Absolute + ĐбŃолютный + + + + Percentage + Процентный + + + + Do not enlarge images + Не Ńвеличивать + + + + Output Folder + Папка вывода + + + + ... + ... + + + + Remember last folder + Запомнить ĐżĐ°ĐżĐşŃ + + + + Keep Structure + Сохранить ŃŃ‚Ń€ŃктŃŃ€Ń + + + + Same folder as input + Сохранить в иŃходной папке + + + + Suffix: + СŃффикŃ: + + + + Auto preview + Đвто проŃмотр + + + + Choose and output folder... + Выберите папкŃ... + + + + Not allowed! + Не допŃŃкаетŃŃŹ! + + + + Waiting... + Подождите... + + + + + Cancel + Отмена + + + + The original files will be deleted! + ĐŃходные файлы бŃĐ´ŃŃ‚ Ńдалены! + + + + Original Image + ĐŃходное изображение + + + + Compressed Image + Сжатое изображение + + + + File + Файл + + + + Edit + Правка + + + + Action + ДейŃтвие + + + + View + Вид + + + + Toolbar Icon Size + Размер значков + + + + Help + Справка + + + + Tools + ĐĐ˝ŃŃ‚Ń€Ńменты + + + + Add Pictures... + Добавить изображения... + + + + Ctrl+O + + + + + Open List... + Открыть ŃпиŃок... + + + + Ctrl+L + + + + + Save List As... + Сохранить ŃпиŃок как... + + + + Ctrl+S + + + + + Minimize to tray + СвернŃŃ‚ŃŚ в трей + + + + Minimize the application to system tray + СвернŃŃ‚ŃŚ ĐżŃ€ĐľĐłŃ€Đ°ĐĽĐĽŃ Đ˛ ŃиŃтемный трей + + + + Exit + Выход + + + + Ctrl+Q + + + + + Remove Item + Удалить выбранные файлы + + + + Del + + + + + Clear List + ОчиŃтить ŃпиŃок + + + + Ctrl+Del + + + + + Ctrl+P + + + + + + Compress! + Выполнить Ńжатие! + + + + Return + Возврат + + + + Online Support + Поддержка онлайн + + + + Website + ДомаŃняя Ńтраница + + + + Ctrl+W + + + + + Check for Updates + Проверить обновление + + + + Donate to Caesium + Помочь ĐżŃ€ĐľĐµĐşŃ‚Ń + + + + About + Đž программе + + + + About Qt + Đž виджете QT + + + + Show Toolbar + Показывать панель инŃŃ‚Ń€Ńментов + + + + Settings + НаŃтройки + + + + Open Folder... + Открыть папкŃ... + + + + Ctrl+Shift+O + + + + + Remove Item From List and Hard Disk + Удалить вŃе файлы Ń Đ´Đ¸Ńка + + + + Ctrl+Shift+D + + + + + 32x32 + 32x32 + + + + 24x24 + 24x24 + + + + Save Profile... + Сохранить профиль... + + + + Load Profile... + ЗагрŃзить профиль... + + + + Save List + Сохранить ŃпиŃок + + + + Restore + Đ’ĐľŃŃтановить + + + + Close + Закрыть + + + + Failed to create the directory structure. + ĐžŃибка Ńоздания ŃŃ‚Ń€ŃктŃры каталогов. + + + + Select file(s) + Выбрать файл(Ń‹) + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + Đзображения (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;Файлы PNG (*.png);;Файлы JPEG (*.jpg *.jpeg);;Файлы BMP (*.bmp);;Файлы TIFF (*.tif *.tiff);;Файлы PPM (*.ppm);;Файлы XBM (*.xbm);;Файлы XPM (*.xpm) + + + + Item count: + КоличеŃтво файлов: + + + + Open Directory + Выберите ĐżĐ°ĐżĐşŃ Ń Đ¸Đ·ĐľĐ±Ń€Đ°Đ¶ĐµĐ˝Đ¸ŃŹĐĽĐ¸: + + + + Select output directory + Выберите ĐżĐ°ĐżĐşŃ Đ´Đ»ŃŹ Ńохранения обработанных изображений: + + + + I can't set the quality! + Сжатие невозможно! + + + + Info + Đнформация + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + Đзображения PNG и BMP являютŃŃŹ форматом Ńжатия без +потерь и не могŃŃ‚ быть обработаны как формат JPG. +Для таких форматов Ńровень качеŃтва бŃдет выбран +программой Caesium автоматичеŃки. + + + + + Save as... + Сохранить как... + + + + + Caesium List (*.clf) + СпиŃок Caesium (*.clf) + + + + Open a list file... + Открыть файл ŃпиŃка... + + + + About Qt4 + Đž виджете Qt4 + + + + + + Error + ĐžŃибка + + + + Failed to create the directory. +Aborting. + ĐžŃибка Ńоздания каталога. +Операция отменена. + + + + The list is empty! Fill it! + СпиŃок изображений ĐżŃŃŃ‚! + + + + Set an Output Directory first! + Сначала Ńкажите каталог вывода! + + + + Deleting original files... + Удаление иŃходных файлов... + + + + Compression done! + Готово! + + + + Compression Completed with: +» + РезŃльтаты обработки: + » + + + + compressed +» + Ńжато + » + + + + skipped +» + пропŃщено + » + + + + error(s) +Time elapsed: + ĐľŃибок +Время работы: + + + + +Saved space: + +Экономия: + + + + - Caesium - Image Compressor + - Caesium - Image Compressor + + + + + Warning + Внимание + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Выбранные файлы бŃĐ´ŃŃ‚ Ńдалены окончательно. +Đ’Ń‹ дейŃтвительно хотите продолжить? + + + + + Yes + Да + + + + No + Нет + + + + The output folder doesn't exists. +Do you want to create it? + Указанная папка не ŃŃщеŃтвŃет. +Đ’Ń‹ хотите Ńоздать её? + + + + + Caesium Profile (*.cpf) + Профиль Caesium (*.cpf) + + + + Select a profile file... + Выбрать файл профиля... + + + + Exit + + + Are you sure? + ЗаверŃение работы + + + + Do you really want to exit Caesium? + Đ’Ń‹ дейŃтвительно хотите закрыть Caesium? + + + + Always check + СпраŃивать вŃегда + + + + Yes + Да + + + + No + Нет + + + + Preferences + + + Preferences + НаŃтройки + + + + General + ĐžŃновные + + + + Default Path + Сохранение изображений + + + + Use a default output directory if none is specified + ĐŃпользовать по Ńмолчанию ŃледŃющŃŃŽ папкŃ: + + + + ... + ... + + + + Default Image View + Размер изображения + + + + Original Size + Оригинальный + + + + + buttonGroup + buttonGroup + + + + Fit Window + ВпиŃĐ°Ń‚ŃŚ в окно + + + + Scan subdirectories when you open a folder + При выборе папки иŃкать изображения в подкаталогах + + + + Load the last used profile at startup + При Đ·Đ°ĐżŃŃке программы загрŃжать поŃледний профиль + + + + Prompt before exit + Подтверджать заверŃение работы Ń ĐżŃ€ĐľĐłŃ€Đ°ĐĽĐĽĐľĐą + + + + Check for updates at startup + Проверять обновления при Đ·Đ°ĐżŃŃке программы + + + + Restore window size and layout at startup + ВооŃŃтановить размеры окна и панелей при Đ·Đ°ĐżŃŃке + + + + Style + Стиль: + + + + Compression + Сжатие + + + + Keep EXIF Information while compressing + Сохранить EXIF-данные при Ńжатии изображений + + + + Delete the original file from disk + Удалить иŃходный файл Ń Đ¶ĐµŃткого диŃка + + + + Don't delete if input extension is different from output one + Не Ńдалять, еŃли раŃŃирение файлов вывода Đ´Ń€Ńгое + + + + Keep the original Date Information + Сохранить иŃходные Đ´Đ°Ń‚Ń Đ¸ время Ńоздания + + + + + Language + ĐŻĐ·Ń‹Đş + + + + Skip if the output size is greater than the original + ПропŃŃкать файл, еŃли новый размер больŃе иŃходного + + + + OK + OK + + + + Apply + Применить + + + + Cancel + Отмена + + + + Information + Đнформация + + + + You need to restart the application before +changes take effect + Для применения Ńделанных наŃтроек +необходимо перезапŃŃтить программŃ. + + + + Select default output directory + Выберите ĐżĐ°ĐżĐşŃ ĐżĐľ Ńмолчанию для запиŃи обработанных изображений: + + + + QDropTreeWidget + + + Clear list + ОчиŃтить ŃпиŃок + + + + Preview + ПроŃмотр + + + + Remove item + Удалить выбранные файлы + + + + Add pictures... + Добавить изображения... + + + + Open folder... + Открыть папкŃ... + + + + Open destination folder + Открыть ĐżĐ°ĐşŃ Đ˛Ń‹Đ˛ĐľĐ´Đ° + + + + Open input folder + Открыть иŃходнŃŃŽ ĐżĐ°ĐżĐşŃ + + + + Remove from list and Hard Disk + Удалить вŃе из ŃпиŃка и винчеŃтера + + + + Updater + + + Caesium updater + Обновление Caesium + + + + Your version is + Đ’Ń‹ иŃпользŃете верŃию + + + + Checking version... + Проверка верŃии... + + + + Start + Старт + + + + Close + Закрыть + + + + Caesium current version is: + ТекŃщая верŃия Caesium: + + + + + + ERROR: Connection timed out... + ОШĐĐ‘ĐšĐ: Подключение отŃŃŃ‚ŃтвŃет... + + + + + + An error occurred. Please check your internet connection. + ПроизоŃла ĐľŃибка. Проверьте ваŃе подключение Đş Ńети Đнтернет. + + + + Contacting server... + Содинение Ń Ńервером... + + + + Downloading + ЗагрŃзка + + + + Download completed. + ЗагрŃзка заверŃена. + + + + Information + Đнформация + + + + Caesium will exit now in order to allow the update to run + ĐˇĐµĐąŃ‡Đ°Ń Caesium бŃдет закрыта для обновления. + + + diff --git a/caesium_sv.ts b/caesium_sv.ts new file mode 100644 index 0000000..5254af1 --- /dev/null +++ b/caesium_sv.ts @@ -0,0 +1,1075 @@ + + + + + AboutDialog + + + About + Om + + + + Information + Information + + + + Thanks + Tack + + + + License + Licens + + + + Close + Stäng + + + + Name: + Namn: + + + + Version: + Version: + + + + Author: + Utvecklare: + + + + Website: + Website: + Webbsida: + + + + Translations: + Ă–versättning: + + + + For Metatag manipulation + För Metatag-manipulering + + + + Base of the icon set + Bas för ikonuppsättning + + + + Caesium + + + Caesium - Image Compressor + Caesium - Bildkomprimering + + + + Name + Namn + + + + Size + Storlek + + + + New Size + Ny storlek + + + + Ratio + Förändring + + + + Quality + Kvalitet + + + + Resolution + Upplösning + + + + New Resolution + Ny upplösning + + + + Full Path + Sökväg + + + + Add + Lägg till + + + + Remove + Ta bort + + + + + Preview + Förhandsgranska + + + + A new version is available! + En ny version finns tillgänglig! + + + + Compression Options + Komprimeringsalternativ + + + + Quality: + Kvalitet: + + + Same Quality For All + Samma kvallitet för alla + + + + Set Quality + Verkställ + + + + Format: + Format: + + + + JPG + JPG + + + + PNG + PNG + + + + BMP + BMP + + + + Resize + Ă„ndra storlek + + + + Absolute + Absolut + + + + Percentage + Procent + + + + Height: + Höjd: + + + px + px + + + + + Same for all + Samma för alla + + + + Input + Indata + + + + Apply + Verkställ + + + + Width: + Bredd: + + + + Keep Aspect Ratio + Bevara proportioner + + + + Do not enlarge images + Förstora inte bilder + + + + Output Folder + MĂĄlkatalog + + + + Choose and output folder... + Välj utdatamapp... + + + + ... + ... + + + Remember Last Folder + Kom ihĂĄg senaste katalog + + + Same Folder as Input + Samma som källan + + + + Keep Structure + Bevara struktur + + + + Remember last folder + Kom ihĂĄg senaste mapp + + + + Same folder as input + Samma mapp som indata + + + + Suffix: + Suffix: + + + + Not allowed! + Ej tillĂĄtet! + + + + Waiting... + Väntar... + + + + + Cancel + Avbryt + + + + The original files will be deleted! + Originalfilerna kommer att tas bort! + + + + Original Image + Originalbild + + + + Compressed Image + Komprimerad bild + + + + Auto preview + Förhandsgranska automatiskt + + + + File + Arkiv + + + + Edit + Redigera + + + + Action + Ă…tgärd + + + + View + Visa + + + + Toolbar Icon Size + Ikonstorlek + + + + Help + Hjälp + + + + Tools + Verktyg + + + + Add Pictures... + Lägg till bilder... + + + + Ctrl+O + Ctrl+O + + + + Open List... + Ă–ppna lista... + + + + Ctrl+L + Ctrl+L + + + + Save List As... + Spara lista som... + + + + Ctrl+S + Ctrl+S + + + + Exit + Avsluta + + + + Ctrl+Q + Ctrl+Q + + + + Remove Item + Ta bort objekt + + + + Del + Del + + + + Clear List + Rensa lista + + + + Ctrl+Del + Ctrl+Del + + + + Ctrl+P + Ctrl+P + + + + Minimize to tray + Minimera till meddelandefältet + + + + Minimize the application to system tray + Minimera programmet till meddelandefältet + + + + Ctrl+Alt+Q + Ctrl+Alt+Q + + + + + Compress! + Komprimera! + + + Return + BakĂĄt + + + + Online Support + Online-support + + + + Website + Webbsida + + + + Ctrl+W + Ctrl+W + + + + Check for Updates + Sök efter uppdateringar + + + + Donate to Caesium + Donera till Caesium + + + + About + Om + + + + + About Qt + Om Qt + + + + Show Toolbar + Visa verktygsfält + + + + Settings + Inställningar + + + + Open Folder... + Lägg till katalog... + + + + Ctrl+Shift+O + Ctrl+Shift+O + + + + Remove Item From List and Hard Disk + Ta bort objekt frĂĄn lista och hĂĄrddisk + + + + Ctrl+Shift+D + Ctrl+Shift+D + + + + 32x32 + 32x32 + + + 48x48 + 48x48 + + + + 24x24 + 24x24 + + + + Save Profile... + Spara profil... + + + + Load Profile... + Läs in profil... + + + + Save List + Spara lista + + + + Select file(s) + Välj fil(er) + + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + Bildformat som stöds (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG-filer (*.png);;JPEG-filer (*.jpg *.jpeg);;BMP-filer (*.bmp);;TIFF-filer (*.tif *.tiff);;PPM-filer (*.ppm);;XBM-filer (*.xbm);;XPM-filer (*.xpm) + + + + Compression finished! +- + Komprimering slutförd! +- + + + + compressed +- + komprimerat +- + + + + skipped +- + undantaget +- + + + + Item count: + Antal bilder: + + + + Open Directory + Lägg till katalog + + + + Select output directory + Välj mĂĄlkatalog + + + + I can't set the quality! + Kvalitet kan ej anges! + + + + Info + Info + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG och BMP är förlustfria format, och kan +inte komprimeras pĂĄ samma sätt som JPG. +Ceasium kommer att ställa in kvalitetsnivĂĄn +automatiskt för dessa format. + + + + + Save as... + Spara som... + + + + + Caesium List (*.clf) + Caesium-lista (*.clf) + + + + Open a list file... + Ă–ppna en listfil... + + + About Qt4 + Om Qt4 + + + + + + + Error + Fel + + + + Failed to create the directory. +Aborting. + Kunde inte skapa mĂĄlkatalog. Avbryter. + + + + The list is empty! Fill it! + Listan är tom! Lägg till filer! + + + + Set an Output Directory first! + Ange mĂĄlkatalog först! + + + + Deleting original files... + Tar bort originalfiler... + + + + Compression done! + Komprimering slutförd! + + + Compression Completed with: +» + Komprimering slutförd med: +» + + + compressed +» + komprimerad(e) +» + + + skipped +» + utelämnad(e) +» + + + + error(s) +Time elapsed: + fel +Förfluten tid: + + + + +Saved space: + +Sparat utrymme: + + + + Processing: + Bearbetar: + + + + - Caesium - Image Compressor + - Caesium - Bildkomprimering + + + + + Warning + Varning + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + Den här ĂĄtgärden kommer att radera valda filer PERMANENT. +Vill du verkligen fortsätta? + + + + + Yes + Ja + + + + No + Nej + + + + The output folder doesn't exists. +Do you want to create it? + MĂĄlkatalogen finns inte. +Vill du skapa den? + + + + + Caesium Profile (*.cpf) + Caesium-profil (*.cpf) + + + + Select a profile file... + Välj en profilfil... + + + + Restore + Ă…terställ + + + + Close + Stäng + + + + Failed to create the directory structure. + Kunde inte skapa mappstruktur. + + + + Exit + + + Are you sure? + Ă„r du säker? + + + + Do you really want to exit Caesium? + Vill du verkligen avsluta Caesium? + + + + Always check + FrĂĄga alltid + + + + Yes + Ja + + + + No + Nej + + + + Preferences + + + Preferences + Inställningar + + + + General + Allmänt + + + + Default Path + StandardmĂĄlkatalog + + + + Use a default output directory if none is specified + Använd standardmĂĄlkatalog om inget specificeras + + + + ... + ... + + + + Default Image View + Standardbildvy + + + + Original Size + Originalstorlek + + + buttonGroup + knappgrupp + + + + Fit Window + Anpassad + + + + Scan subdirectories when you open a folder + Skanna underkataloger när en katalog öppnas + + + + Load the last used profile at startup + Läs in senast använda profil vid uppstart + + + + Prompt before exit + Bekräfta avslut + + + + Check for updates at startup + Check for uptades at startup + Sök efter uppdateringar vid programstart + + + + Compression + Komprimering + + + + Keep EXIF Information while compressing + BehĂĄll EXIF-information vid komprimering + + + + Delete the original file from disk + Ta bort originalfil frĂĄn disk + + + + Keep the original Date Information + BehĂĄll originalbildens datumstämpling + + + + + Language + SprĂĄk + + + + Restore last used list at startup + Ă…terställ senast använda vid uppstart + + + + Restore window size and layout at startup + Ă…terställ fönsterstorlek och utseende vid uppstart + + + + Style + Stil + + + + WindowsXP + Windows XP + + + + Skip if the output size is greater than the original + Hoppa över om mĂĄlstorlek är större än originalet + + + + Don't delete if input extension is different from output one + Ta inte bort om indataformat är annat än utdataformat + + + + Optimize PNG files during compression + Optimera PNG-filer vid komprimering + + + + Level: + NivĂĄ: + + + + + Medium (Average) + Medium + + + + OK + OK + + + + Cancel + Avbryt + + + + Apply + Verkställ + + + + Information + Information + + + + You need to restart the application before +changes take effect + Du mĂĄste starta om programmet för att verkställa ändringar + + + + Soft (Fastest) + Mjuk (Snabbast) + + + + Hard (Slowest) + HĂĄrd (LĂĄngsam) + + + + Select default output directory + Välj standardmĂĄlkatalog + + + + QDropTreeWidget + + + Clear list + Rensa lista + + + + Preview + Förhandsgranska + + + + Remove item + Ta bort objekt + + + + Add pictures... + Lägg till bilder... + + + + Open folder... + Lägg till katalog... + + + + Open destination folder + Ă–ppna mĂĄlkatalog + + + + Open input folder + Ă–ppna källkatalog + + + + Remove from list and Hard Disk + Ta bort frĂĄn lista och hĂĄrddisk + + + + Updater + + + Caesium updater + Caesium uppdatering + + + + Your version is + Din version är + + + + Checking version... + Kontrollerar version... + + + + Start + Starta + + + + Close + Stäng + + + + Caesium current version is: + Aktuell Caesium-version är: + + + + + + ERROR: Connection timed out... + FEL: Anslutnings-timeout... + + + + + + An error occurred. Please check your internet connection. + Ett fel uppstod. Kontrollera din Internetanslutning. + + + + Contacting server... + Kontaktar server... + + + + Downloading + Laddar ner + + + + Download completed. + Nedladdning slutförd. + + + + Information + Information + + + + Caesium will exit now in order to allow the update to run + Caesium kommer att avslutas för att verkställa uppdateringen + + + diff --git a/caesium_tw.ts b/caesium_tw.ts new file mode 100644 index 0000000..b401b86 --- /dev/null +++ b/caesium_tw.ts @@ -0,0 +1,1564 @@ + + + + + AboutDialog + + + + About + é—ść–Ľ + + + + + Information + 資訊 + + + + + Thanks + 致謝 + + + + + License + ćŽć¬Š + + + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + <!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:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt; font-weight:600;">GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Version 3, 29 June 2007 </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Copyright © 2007 Free Software Foundation, Inc. &lt;</span><a href="http://fsf.org/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://fsf.org/</span></a><span style=" font-size:8pt;">&gt;</span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="preamble"></a><span style=" font-size:8pt; font-weight:600;">P</span><span style=" font-size:8pt; font-weight:600;">reamble</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License is a free, copyleft license for software and other kinds of works. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The precise terms and conditions for copying, distribution and modification follow. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="terms"></a><span style=" font-size:8pt; font-weight:600;">T</span><span style=" font-size:8pt; font-weight:600;">ERMS AND CONDITIONS</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section0"></a><span style=" font-size:8pt; font-weight:600;">0</span><span style=" font-size:8pt; font-weight:600;">. Definitions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“This License” refers to version 3 of the GNU General Public License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “covered work” means either the unmodified Program or a work based on the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section1"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">. Source Code.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Corresponding Source for a work in source code form is that same work. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section2"></a><span style=" font-size:8pt; font-weight:600;">2</span><span style=" font-size:8pt; font-weight:600;">. Basic Permissions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section3"></a><span style=" font-size:8pt; font-weight:600;">3</span><span style=" font-size:8pt; font-weight:600;">. Protecting Users' Legal Rights From Anti-Circumvention Law.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section4"></a><span style=" font-size:8pt; font-weight:600;">4</span><span style=" font-size:8pt; font-weight:600;">. Conveying Verbatim Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section5"></a><span style=" font-size:8pt; font-weight:600;">5</span><span style=" font-size:8pt; font-weight:600;">. Conveying Modified Source Versions.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) The work must carry prominent notices stating that you modified it, and giving a relevant date. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section6"></a><span style=" font-size:8pt; font-weight:600;">6</span><span style=" font-size:8pt; font-weight:600;">. Conveying Non-Source Forms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section7"></a><span style=" font-size:8pt; font-weight:600;">7</span><span style=" font-size:8pt; font-weight:600;">. Additional Terms.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: </span></p> +<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:8pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">d) Limiting the use for publicity purposes of names of licensors or authors of the material; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or </li> +<li style=" font-size:8pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. </li></ul> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section8"></a><span style=" font-size:8pt; font-weight:600;">8</span><span style=" font-size:8pt; font-weight:600;">. Termination.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section9"></a><span style=" font-size:8pt; font-weight:600;">9</span><span style=" font-size:8pt; font-weight:600;">. Acceptance Not Required for Having Copies.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section10"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">0. Automatic Licensing of Downstream Recipients.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section11"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">1. Patents.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section12"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">2. No Surrender of Others' Freedom.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section13"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">3. Use with the GNU Affero General Public License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section14"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">4. Revised Versions of this License.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section15"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">5. Disclaimer of Warranty.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section16"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">6. Limitation of Liability.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="section17"></a><span style=" font-size:8pt; font-weight:600;">1</span><span style=" font-size:8pt; font-weight:600;">7. Interpretation of Sections 15 and 16.</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">END OF TERMS AND CONDITIONS </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a name="howto"></a><span style=" font-size:8pt; font-weight:600;">H</span><span style=" font-size:8pt; font-weight:600;">ow to Apply These Terms to Your New Programs</span><span style=" font-size:8pt;"> </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;one line to give the program's name and a brief idea of what it does.&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is free software: you can redistribute it and/or modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> it under the terms of the GNU General Public License as published by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> the Free Software Foundation, either version 3 of the License, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> (at your option) any later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program is distributed in the hope that it will be useful,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> GNU General Public License for more details.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Courier New,courier'; font-size:8pt;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> You should have received a copy of the GNU General Public License</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Also add information on how to contact you by electronic and paper mail. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: </span></p> +<p style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> &lt;program&gt; Copyright (C) &lt;year&gt; &lt;name of author&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> This is free software, and you are welcome to redistribute it</span></p> +<p style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:8pt;"> under certain conditions; type `show c' for details. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see &lt;</span><a href="http://www.gnu.org/licenses/"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a><span style=" font-size:8pt;">&gt;. </span></p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read &lt;</span><a href="http://www.gnu.org/philosophy/why-not-lgpl.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">http://www.gnu.org/philosophy/why-not-lgpl.html</span></a><span style=" font-size:8pt;">&gt;. </span></p></body></html> + + + + + Close + é—śé–‰ + + + + + Name: + ĺŤç¨±ďĽš + + + + + Version: + ç‰ćś¬ďĽš + + + + + Author: + 作者: + + + + + Website: + Website: + ĺ®ç¶˛ďĽš + + + + + Translations: + 翻譯: + + + + + For Metatag manipulation + Meta 標č¨ć“Ťä˝ś + + + + + Base of the icon set + 圖示創作 + + + + Caesium + + + + Caesium - Image Compressor + Caesium - 圖片壓縮器 + + + + + Name + ĺŤç¨± + + + + + Size + 大小 + + + + + New Size + 新大小 + + + + + Ratio + 比率 + + + + + Quality + ĺ“質 + + + + + Resolution + 解ćžĺş¦ + + + + + New Resolution + 新解ćžĺş¦ + + + + + Full Path + ĺ…¨é¨č·Żĺľ‘ + + + + + Add + 加入 + + + + + Remove + 移除 + + + + + + + Preview + é č¦˝ + + + + + A new version is available! + ć–°ç‰ćś¬ĺŹŻç”¨ďĽ + + + + + Compression Options + 壓縮é¸é … + + + + + Quality: + ĺ“質: + + + Same Quality For All + ĺ…¨é¨ç‚şç›¸ĺŚĺ“質層級 + + + + + Set Quality + 設定ĺ“質 + + + + + Format: + 格式: + + + + + JPG + JPG + + + + + PNG + PNG + + + + + BMP + BMP + + + + + Resize + 調整大小 + + + + + Absolute + 絕對值 + + + + + Percentage + 百ĺ†ćŻ” + + + + + Height: + é«ĺş¦ďĽš + + + px + ĺŹç´  + + + + + + + Same for all + ĺ…¨é¨ç›¸ĺŚ + + + + + Input + 輸入 + + + + + Apply + 套用 + + + + + Width: + 寬度: + + + + + Keep Aspect Ratio + 保留外觀比例 + + + + + Do not enlarge images + 不č¦ć”ľĺ¤§ĺś–片 + + + + + Output Folder + 輸出資料夾 + + + + + Choose and output folder... + é¸ĺŹ–輸出資料夾... + + + + + ... + ... + + + Remember Last Folder + č¨ä˝Źćś€ĺľŚčł‡ć–™ĺ¤ľ + + + Same Folder as Input + č¨ä˝Źç›¸ĺŚčł‡ć–™ĺ¤ľç‚şčĽ¸ĺ‡şä˝Ťç˝® + + + + + Keep Structure + äżťç•™çµć§‹ + + + + + Remember last folder + č¨ä˝Źćś€čż‘使用的資料夾 + + + + + Same folder as input + 相ĺŚć–ĽčĽ¸ĺ…Ąčł‡ć–™ĺ¤ľ + + + + + Suffix: + 副檔ĺŤďĽš + + + + + Not allowed! + 不被ĺ…č¨±ďĽ + + + + + Waiting... + 等待中... + + + + + + + Cancel + ĺŹ–ć¶ + + + + + The original files will be deleted! + 原始檔ćˇĺ°‡č˘«ĺŞé™¤ďĽ + + + + + Original Image + 原始圖片 + + + + + Compressed Image + 已壓縮圖片 + + + + + Auto preview + 自動é č¦˝ + + + + + File + ćŞ”ćˇ + + + + + Edit + 編輯 + + + + + Action + 動作 + + + + + View + 檢視 + + + + + Toolbar Icon Size + 工作ĺ—圖示大小 + + + + + Help + čŞŞćŽ + + + + + Tools + ĺ·Ąĺ…· + + + + + Add Pictures... + 加入圖片... + + + + + Ctrl+O + Ctrl+O + + + + + Open List... + 開啟清單... + + + + + Ctrl+L + Ctrl+L + + + + + Save List As... + 另ĺ­ć¸…ĺ–®... + + + + + Ctrl+S + Ctrl+S + + + + + Exit + 離開 + + + + + Ctrl+Q + Ctrl+Q + + + + + Remove Item + 移除項目 + + + + + Del + Del + + + + + Clear List + 清除清單 + + + + + Ctrl+Del + Ctrl+Del + + + + + Ctrl+P + Ctrl+P + + + + + Minimize to tray + 最小化至系統匣 + + + + + Minimize the application to system tray + 最小化應用程式至系統匣 + + + + + Ctrl+Alt+Q + Ctrl+Alt+Q + + + + + + + Compress! + ĺŁ“ç¸®ďĽ + + + Return + 返回 + + + + + Online Support + 線上支援 + + + + + Website + ĺ®ç¶˛ + + + + + Ctrl+W + Ctrl+W + + + + + Check for Updates + 檢查更新 + + + + + Donate to Caesium + ćŤč´çµ¦ Caesium + + + + + About + é—ść–Ľ + + + + + + + About Qt + é—ść–Ľ Qt + + + + + Show Toolbar + éˇŻç¤şĺ·Ąĺ…·ĺ— + + + + + Settings + 設定 + + + + + Open Folder... + 開啟資料夾... + + + + + Ctrl+Shift+O + Ctrl+Shift+O + + + + + Remove Item From List and Hard Disk + 從清單及硬碟中移除 + + + + + Ctrl+Shift+D + Ctrl+Shift+D + + + + + 32x32 + 32x32 + + + 48x48 + 48x48 + + + + + 24x24 + 24x24 + + + + + Save Profile... + 儲ĺ­č¨­ĺ®šćŞ”... + + + + + Load Profile... + 載入設定檔... + + + + + Save List + 儲ĺ­ć¸…ĺ–® + + + + + Select file(s) + é¸ĺŹ–ćŞ”ćˇ + + + Supported Images (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG Files (*.png);;JPEG Files (*.jpg *.jpeg);;BMP Files (*.bmp);;TIFF Files (*.tif *.tiff);;PPM Files (*.ppm);;XBM Files (*.xbm);;XPM Files (*.xpm) + 支援的圖片類型 (*.bmp *.jpg *.jpeg *.tif *.tiff *.png *.ppm *.xbm *.xpm);;PNG ćŞ”ćˇ (*.png);;JPEG ćŞ”ćˇ (*.jpg *.jpeg);;BMP ćŞ”ćˇ (*.bmp);;TIFF ćŞ”ćˇ (*.tif *.tiff);;PPM ćŞ”ćˇ (*.ppm);;XBM ćŞ”ćˇ (*.xbm);;XPM ćŞ”ćˇ (*.xpm) + + + + + Compression finished! +- + 壓縮已完ćďĽ +- + + + + + compressed +- + 已壓縮 +- + + + + + skipped +- + ĺ·˛ç•ĄéŽ +- + + + + + Item count: + é …ç›®č¨ć•¸ďĽš + + + + + Open Directory + 開啟資料夾 + + + + + Select output directory + é¸ĺŹ–輸出資料夾 + + + + + I can't set the quality! + ć‘無法設定ĺ“čłŞďĽ + + + + + Info + 資訊 + + + + + PNG and BMP are loseless formats, and +can't be compressed like JPG do. +Caesium will set the quality level automatically +for those formats. + PNG č‡ BMP 為無ćŤć ĽĺĽŹ +ç„ˇćł•ĺŹ JPG 被壓縮。 +Caesium ĺ°‡ćść›żé€™äş›ć ĽĺĽŹč‡Şĺ‹•ĺś°č¨­ĺ®šć­¤ĺ“質層級。 + + + + + + + Save as... + 另ĺ­ç‚ş... + + + + + + + Caesium List (*.clf) + Caesium 清單 (*.clf) + + + Open a list file... + 開啟清單檔ćˇ... + + + About Qt4 + é—ść–Ľ Qt4 + + + + + + + + + + + Error + 錯誤 + + + + + Failed to create the directory. +Aborting. + 建立資料夾錯誤。 +終止中。 + + + + + The list is empty! Fill it! + 清單為空ďĽĺˇ«ĺ……ĺ® ! + + + + + Set an Output Directory first! + ĺ…č¨­ĺ®ščĽ¸ĺ‡şčł‡ć–™ĺ¤ľďĽ + + + + + Deleting original files... + ĺŞé™¤ĺŽźĺ§‹ćŞ”ćˇ... + + + + + Compression done! + 壓縮完ćďĽ + + + Compression Completed with: +» + 壓縮已完ć: +» + + + compressed +» + 已壓縮 +» + + + skipped +» + ĺ·˛ç•ĄéŽ +» + + + + + error(s) +Time elapsed: + 錯誤 +已耗時: + + + + + +Saved space: + +節çśç©şé–“: + + + + + Processing: + 處ç†ä¸­ďĽš + + + + + - Caesium - Image Compressor + - Caesium - 圖片壓縮器 + + + + + + + Warning + 警告 + + + + + This action will delete the selected files PERMANENTLY. +Are you sure you want to continue? + ć­¤ĺ‹•ä˝śĺ°‡ćś ć°¸äą… çš„ĺŞé™¤ćŞ”ćˇă€‚ +ä˝ ćŻĺ¦ç˘şĺ®šč¦çąĽçşŚďĽź + + + + + + + Yes + ćŻ + + + + + No + ĺ¦ + + + + + The output folder doesn't exists. +Do you want to create it? + 輸出資料夾不ĺ­ĺś¨ă€‚ +ä˝ ćŻĺ¦č¦ĺ»şç«‹ĺ®ďĽź + + + + + + + Caesium Profile (*.cpf) + Caesium 設定檔 (*.cpf) + + + Select a profile file... + é¸ĺŹ–設定檔... + + + + + Restore + 還原 + + + + + Close + é—śé–‰ + + + + + Failed to create the directory structure. + 建立目錄çµć§‹ĺ¤±ć•—。 + + + + Exit + + + + Are you sure? + ä˝ ćŻĺ¦ç˘şĺ®š? + + + + + Do you really want to exit Caesium? + 你確定č¦é—śé–‰ Caesium? + + + + + Always check + 總ćŻćŞ˘ćźĄ + + + + + Yes + ćŻ + + + + + No + ĺ¦ + + + + Preferences + + + + Preferences + ĺŹĺĄ˝ + + + + + General + ä¸€č¬ + + + + + Default Path + é č¨­č·Żĺľ‘ + + + + + Use a default output directory if none is specified + 若無特定é¸ĺŹ–則使用é č¨­čĽ¸ĺ‡şčł‡ć–™ĺ¤ľ + + + + + ... + ... + + + + + Default Image View + 檢視é č¨­ĺś–片 + + + + + Original Size + 原始大小 + + + buttonGroup + buttonGroup + + + + + Fit Window + é©ĺ視窗 + + + + + Scan subdirectories when you open a folder + 當你開啟一資料夾時ćŽćŹŹĺ­čł‡ć–™ĺ¤ľ + + + + + Load the last used profile at startup + 啟動時載入最近使用的設定檔 + + + + + Prompt before exit + 離開前ćŹç¤ş + + + + + Check for updates at startup + Check for uptades at startup + 啟動時檢查更新 + + + + + Compression + 壓縮 + + + + + Keep EXIF Information while compressing + 壓縮時保留 EXIF 資訊 + + + + + Delete the original file from disk + 從硬碟中ĺŞé™¤ĺŽźĺ§‹ćŞ”ćˇ + + + + + Keep the original Date Information + 保留原始資料資訊 + + + + + + + Language + 語言 + + + + + Restore last used list at startup + Restore last used list at startup + + + + + Restore window size and layout at startup + 啟動時還原視窗大小č‡ç‰éť˘é…Ťç˝® + + + + + Style + 風格 + + + + + WindowsXP + WindowsXP + + + + + Skip if the output size is greater than the original + č‹ĄčĽ¸ĺ‡şĺ¤§ĺ°Źĺ¤§ć–ĽĺŽźĺ§‹ĺ¤§ĺ°Źĺ‰‡ç•ĄéŽ + + + + + Don't delete if input extension is different from output one + ĺ‡ĺ¦‚輸入副檔ĺŤä¸ŤĺŚć–ĽčĽ¸ĺ‡şĺ‰ŻćŞ”ĺŤĺ‰‡ä¸ŤĺŞé™¤ + + + + + Optimize PNG files during compression + 壓縮éŽç¨‹ćś€ä˝łĺŚ– PNG 檔 + + + + + Level: + 等級: + + + + + + + Medium (Average) + 中等 (一č¬) + + + + + OK + 確定 + + + + + Cancel + ĺŹ–ć¶ + + + + + Apply + 套用 + + + + + Information + 資訊 + + + + + You need to restart the application before +changes take effect + 你需č¦ĺ…重啟程式以應用此ć•ćžś + + + + + Soft (Fastest) + 軟性 (最快) + + + + + Hard (Slowest) + 硬性 (最慢) + + + + + Select default output directory + é¸ĺŹ–é č¨­čĽ¸ĺ‡şčł‡ć–™ĺ¤ľ + + + + QDropTreeWidget + + + + Clear list + 清除清單 + + + + + Preview + é č¦˝ + + + + + Remove item + 移除項目 + + + + + Add pictures... + 加入圖片... + + + + + Open folder... + 開啟資料夾... + + + + + Open destination folder + 開啟目的資料夾 + + + + + Open input folder + 開啟輸入資料夾 + + + + + Remove from list and Hard Disk + 從清單及硬碟中移除 + + + + Updater + + + + Caesium updater + Caesium 更新器 + + + + + Your version is + ä˝ çš„ç‰ćś¬ç‚ş + + + + + Checking version... + 檢查ç‰ćś¬ä¸­... + + + + + Start + 開始 + + + + + Close + é—śé–‰ + + + + + Caesium current version is: + Caesium 目前ç‰ćś¬ç‚ş: + + + + + + + + + ERROR: Connection timed out... + 錯誤:連接時間已逾時... + + + + + + + + + An error occurred. Please check your internet connection. + 發生錯誤。請檢察你的網路連接。 + + + + + Contacting server... + 連接伺服器中... + + + + + Downloading + 下載中 + + + + + Download completed. + 下載已完ć。 + + + + + Information + 資訊 + + + Caesium will exit now in order to allow the update to run + Caesium 將關閉並執行更新 + + + diff --git a/clf.ico b/clf.ico new file mode 100644 index 0000000..c4b7383 Binary files /dev/null and b/clf.ico differ diff --git a/compressionthread.cpp b/compressionthread.cpp new file mode 100644 index 0000000..a86fd13 --- /dev/null +++ b/compressionthread.cpp @@ -0,0 +1,383 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include "compressionthread.h" +#include "caesium.h" +#include "ui_caesium.h" +#include "global.h" +#include "imageresize.h" + +#include +#include +#include +#include +#include + +#include +#include +#include +#include + + +WCHAR *qStringToWideChar(const QString &str) +{ + if (str.isNull()) + return 0; + WCHAR *result = new WCHAR[str.length() + 1]; + for (int i = 0; i < str.length(); ++i) + result[i] = str[i].unicode(); + result[str.length()] = 0; + return result; +} + +void startProcess(QString argv) +{ + WCHAR* exe = qStringToWideChar(argv); + STARTUPINFO si; + PROCESS_INFORMATION pi; + + ZeroMemory( &si, sizeof(si) ); + si.cb = sizeof(si); + ZeroMemory( &pi, sizeof(pi) ); + + if( !CreateProcessW( NULL, + exe, + NULL, + NULL, + FALSE, + CREATE_NO_WINDOW, + NULL, + NULL, + &si, + &pi ) + ) + { + return; + } + + WaitForSingleObject( pi.hProcess, INFINITE ); + + CloseHandle( pi.hProcess ); + CloseHandle( pi.hThread ); +} + +CompressionThread::CompressionThread(QStringList list, QString orig_dir, QString dir, QString format, QString suffix, QStringList quality, bool checked, QList w, QList h, bool fixed, bool keepARatio, bool notEnlarge, bool resize, bool structure, + QObject *parent) +: QThread(parent) +{ + t_list = list; + t_dir = dir; + t_format = format; + t_suffix = suffix; + t_quality = quality; + t_checked = checked; + t_w = w; + t_h = h; + t_fixed = fixed; + t_keepARatio = keepARatio; + t_notEnlarge = notEnlarge; + t_resize = resize; + t_structure = structure; + t_orig_dir = orig_dir; + settings.setIniCodec("UTF-8"); +} + +QString t_getRatio(int origSize, int newSize) +{ + int ratio = newSize * 100 / origSize; + if (ratio <= 100) + { + return QString::number(ratio - 100) + " %"; + } + else + { + return "+" + QString::number(ratio - 100) + " %"; + } +} + +void CompressionThread::run() +{ + bool sameFormat = false; + QString t_dir_original = t_dir; + if (t_format == "null") + { + sameFormat = true; + } + bool no_enlarge = settings.value("Preferences/noenlarge").value(); + if (no_enlarge) + { + CompressionThread::noEnlarge(); + return; + } + ImageResize imgResize; + for (int i = 0; i < t_list.count(); i++) + { + QString right_dir = ""; + QString originalQuality = t_quality.at(i); + QFileInfo info(t_list.at(i)); + if (info.size() == 0) + { + emit updateUI(i + 1, 0, "0%"); + continue; + } + if (QFile::exists(t_list.at(i))) + { + if (sameFormat) + { + t_format = info.suffix(); + if (t_format.toLower() != "jpg") + { + t_quality.replace(i, "1"); + } + else + { + t_quality.replace(i, originalQuality); + } + } + int old_size = info.size(); + emit processingIcon(i, info.fileName()); + QImage image(t_list.at(i)); + if (t_resize && t_fixed) + { + image = imgResize.fixedResize(image, t_w.at(i), t_h.at(i), t_keepARatio, t_notEnlarge); + } + else if (t_resize && t_fixed == false) + { + if (t_w.at(i) == -1 && t_h.at(i) == -1) + { + t_w.replace(i, image.width()); + t_h.replace(i, image.height()); + } + image = imgResize.pergentageResize(image, t_w.at(i), t_h.at(i)); + } + if (t_checked) + { + t_dir = info.path(); + image.save(t_dir + "/" + info.completeBaseName() + t_suffix, t_format.toLatin1(), t_quality.at(i).toInt()); + /*if (t_format.toLatin1().toLower() == "png" && settings.value("Preferences/pngcompression").value()) + { + CompressionThread::optimizePNG(t_dir + "/" + info.completeBaseName() + t_suffix, settings.value("Preferences/pnglevel").value()); + }*/ + } + else if (t_structure) + { + right_dir = info.path().remove(t_orig_dir.replace('\\', '/'), Qt::CaseSensitive); + right_dir = t_dir_original + right_dir; + right_dir.replace('\\', '/'); + t_dir = right_dir; + if (!QDir(t_dir).exists()) + { + if (!QDir().mkpath(t_dir)) + { + emit errorMessageBox(); + return; + } + } + image.save(t_dir + "/" + info.completeBaseName() + t_suffix, t_format.toLatin1(), t_quality.at(i).toInt()); + /*if (t_format.toLatin1().toLower() == "png" && settings.value("Preferences/pngcompression").value()) + { + CompressionThread::optimizePNG(t_dir + "/" + info.completeBaseName() + t_suffix, settings.value("Preferences/pnglevel").value()); + }*/ + } + else + { + image.save(t_dir + "/" + info.completeBaseName() + t_suffix, t_format.toLatin1(), t_quality.at(i).toInt()); + /*if (t_format.toLatin1().toLower() == "png" && settings.value("Preferences/pngcompression").value()) + { + CompressionThread::optimizePNG(t_dir + "/" + info.completeBaseName() + t_suffix, settings.value("Preferences/pnglevel").value()); + }*/ + } + + + if (settings.value("Preferences/exif").value() && t_format.toLower() == "jpg") + { + QString exec = "tools\\exif_copy.exe \"" + t_list.at(i) + "\" \"" + t_dir + "\\" + info.completeBaseName() + t_suffix +"\""; + startProcess(exec); + } + QFile newImage(t_dir + "/" + info.completeBaseName() + t_suffix); + QFileInfo newInfo; + if (QFile::exists(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format)) + { + QFile::remove(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format); + } + newImage.rename(t_dir + "/" + info.completeBaseName() + t_suffix, t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format); + newInfo.setFile(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format); + int size = newInfo.size(); + QString ratio = t_getRatio(old_size, newInfo.size()); + if(settings.value("Preferences/keepdate").value()) + { + CompressionThread::keepDate(t_list.at(i), newInfo.filePath()); + } + + emit updateUI(i + 1, size, ratio); + } + else + { + emit updateUI(i + 1, -1, "0%"); + } + } + exit(); +} + +void CompressionThread::noEnlarge() +{ + ImageResize imgResize; + QString t_dir_original = t_dir; + bool sameFormat = false; + if (t_format == "null") + { + sameFormat = true; + } + for (int i = 0; i < t_list.count(); i++) + { + QString originalQuality = t_quality.at(i); + QString right_dir = ""; + QFileInfo info(t_list.at(i)); + if (info.size() == 0) + { + emit updateUI(i + 1, 0, "0%"); + continue; + } + if (QFile::exists(t_list.at(i))) + { + if (sameFormat) + { + t_format = info.suffix(); + if (t_format.toLower() != "jpg") + { + t_quality.replace(i, "1"); + } + else + { + t_quality.replace(i, originalQuality); + } + } + int old_size = info.size(); + emit processingIcon(i, info.fileName()); + QImage image(t_list.at(i)); + if (t_resize && t_fixed) + { + image = imgResize.fixedResize(image, t_w.at(i), t_h.at(i), t_keepARatio, t_notEnlarge); + } + else if (t_resize && t_fixed == false) + { + image = imgResize.pergentageResize(image, t_w.at(i), t_h.at(i)); + } + if (t_checked) + { + t_dir = info.path(); + image.save(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format + ".ckd", t_format.toLatin1(), t_quality.at(i).toInt()); + /*if (t_format.toLatin1().toLower() == "png" && settings.value("Preferences/pngcompression").value()) + { + CompressionThread::optimizePNG(t_dir + "/" + info.completeBaseName() + t_suffix, settings.value("Preferences/pnglevel").value()); + }*/ + } + else if (t_structure) + { + right_dir = info.path().remove(t_orig_dir.replace('\\', '/'), Qt::CaseSensitive); + right_dir = t_dir_original + right_dir; + right_dir.replace('\\', '/'); + t_dir = right_dir; + if (!QDir(t_dir).exists()) + { + if (!QDir().mkdir(t_dir)) + { + emit errorMessageBox(); + return; + } + } + image.save(t_dir + "/" + info.completeBaseName() + t_suffix, t_format.toLatin1(), t_quality.at(i).toInt()); + /*if (t_format.toLatin1().toLower() == "png" && settings.value("Preferences/pngcompression").value()) + { + CompressionThread::optimizePNG(t_dir + "/" + info.completeBaseName() + t_suffix, settings.value("Preferences/pnglevel").value()); + }*/ + } + else + { + image.save(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format + ".ckd", t_format.toLatin1(), t_quality.at(i).toInt()); + /*if (t_format.toLatin1().toLower() == "png" && settings.value("Preferences/pngcompression").value()) + { + CompressionThread::optimizePNG(t_dir + "/" + info.completeBaseName() + t_suffix, settings.value("Preferences/pnglevel").value()); + }*/ + } + + if (settings.value("Preferences/exif").value() && t_format.toLower() == "jpg") + { + QString exec = "tools\\exif_copy.exe \"" + t_list.at(i) + "\" \"" + t_dir + "\\" + info.completeBaseName() + t_suffix + "." + t_format + "\""; + startProcess(exec); + } + + QFileInfo newInfo(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format + ".ckd"); + int size = newInfo.size(); + QString ratio = t_getRatio(old_size, newInfo.size()); + + if (newInfo.size() > info.size()) + { + size *= -1; + QFile::remove(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format + ".ckd"); + } + else + { + QFile::remove(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format); + QFile::rename(t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format + ".ckd", t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format); + } + + if(settings.value("Preferences/keepdate").value()) + { + CompressionThread::keepDate(t_list.at(i), t_dir + "/" + info.completeBaseName() + t_suffix + "." + t_format); + } + + emit updateUI(i + 1, size, ratio); + } + else if (info.size() == 0) + { + emit updateUI(i + 1, 0, "0%"); + } + else + { + emit updateUI(i + 1, -1, "0%"); + } + } +} + +void CompressionThread::keepDate(QString orig, QString dest) +{ + HANDLE hFile, hFile2; + + FILETIME ftCreate, ftAccess, ftWrite; + hFile = CreateFile(qStringToWideChar(orig), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL); + GetFileTime(hFile, &ftCreate, &ftAccess, &ftWrite); + + hFile2 = CreateFile(qStringToWideChar(dest), FILE_WRITE_ATTRIBUTES, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); + SetFileTime(hFile2, &ftCreate, &ftAccess, &ftWrite); + + CloseHandle(hFile); + CloseHandle(hFile2); +} + +void CompressionThread::optimizePNG(QString file, int level) +{ + QString exec = "tools\\optipng.exe -o" + QString::number(level) + " \"" + file + "\""; + startProcess(exec); +} diff --git a/compressionthread.h b/compressionthread.h new file mode 100644 index 0000000..60cc0bd --- /dev/null +++ b/compressionthread.h @@ -0,0 +1,42 @@ +#ifndef COMPRESSIONTHREAD_H +#define COMPRESSIONTHREAD_H + +#include + +class CompressionThread : public QThread +{ + Q_OBJECT + +public: + CompressionThread(QStringList list, QString orig_dir, QString dir, QString format, QString suffix, QStringList quality, bool checked, + QList w, QList h, bool fixed, bool keepARatio, bool notEnlarge, bool resize, bool structure, + QObject *parent); + void run(); + void noEnlarge(); + void writeToFile(QString orig, QString dest); + void keepDate(QString, QString); + void optimizePNG(QString file, int level); + +private: + QStringList t_list; + QString t_dir; + QString t_format; + QString t_suffix; + QStringList t_quality; + bool t_checked; + QList t_w; + QList t_h; + bool t_fixed; + bool t_keepARatio; + bool t_notEnlarge; + bool t_resize; + bool t_structure; + QString t_orig_dir; + +signals: + void updateUI(int value, int newSize, QString ratio); + void processingIcon(int, QString); + void errorMessageBox(); +}; + +#endif // COMPRESSIONTHREAD_H diff --git a/cpf.ico b/cpf.ico new file mode 100644 index 0000000..0393cf5 Binary files /dev/null and b/cpf.ico differ diff --git a/exit.cpp b/exit.cpp new file mode 100644 index 0000000..ad871dd --- /dev/null +++ b/exit.cpp @@ -0,0 +1,52 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + + +#include "exit.h" +#include "ui_exit.h" +#include "global.h" + +Exit::Exit(QWidget *parent) : + QDialog(parent), + ui(new Ui::Exit) +{ + ui->setupUi(this); + + e_parent = parent; + this->setWindowFlags(Qt::MSWindowsFixedSizeDialogHint); + this->setWindowFlags(Qt::Dialog); + + ui->alwaysCheckBox->setChecked(settings.value("Preferences/promptexit").value()); +} + +Exit::~Exit() +{ + delete ui; +} + + +void Exit::on_alwaysCheckBox_toggled(bool checked) +{ + settings.setValue("Preferences/promptexit", checked); +} diff --git a/exit.h b/exit.h new file mode 100644 index 0000000..cbc4923 --- /dev/null +++ b/exit.h @@ -0,0 +1,27 @@ +#ifndef EXIT_H +#define EXIT_H + +#include + +namespace Ui { + class Exit; +} + +class Exit : public QDialog +{ + Q_OBJECT + +public: + explicit Exit(QWidget *parent = 0); + ~Exit(); + +private slots: + + void on_alwaysCheckBox_toggled(bool checked); + +private: + Ui::Exit *ui; + QWidget *e_parent; +}; + +#endif // EXIT_H diff --git a/exit.ui b/exit.ui new file mode 100644 index 0000000..5a3f9fc --- /dev/null +++ b/exit.ui @@ -0,0 +1,238 @@ + + + Exit + + + Qt::WindowModal + + + + 0 + 0 + 320 + 109 + + + + + 320 + 109 + + + + + 320 + 109 + + + + Are you sure? + + + + :/icons/caesium_icon.png:/icons/caesium_icon.png + + + + 0 + + + 0 + + + + + QLayout::SetMaximumSize + + + 10 + + + 0 + + + + + + 0 + 0 + + + + + 16777215 + 65 + + + + + MS Shell Dlg 2 + 8 + 50 + false + false + + + + Qt::NoFocus + + + QFrame::NoFrame + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoSelection + + + QAbstractItemView::SelectRows + + + + 32 + 32 + + + + QListView::Fixed + + + 10 + + + QListView::ListMode + + + + Do you really want to exit Caesium? + + + + 9 + + + + AlignLeft|AlignVCenter + + + + :/icons/help.png:/icons/help.png + + + + + + + + 10 + + + 6 + + + 6 + + + + + Always check + + + true + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + 0 + 0 + + + + Yes + + + + + + + + 0 + 0 + + + + No + + + + + + + + + Qt::Horizontal + + + + + + + + + + + + + yesButton + clicked() + Exit + accept() + + + 198 + 90 + + + 128 + 77 + + + + + noButton + clicked() + Exit + reject() + + + 277 + 78 + + + 250 + 104 + + + + + diff --git a/form.ui b/form.ui new file mode 100644 index 0000000..c554289 --- /dev/null +++ b/form.ui @@ -0,0 +1,21 @@ + + + Form + + + + 0 + 0 + 679 + 491 + + + + Form + + + + + + + diff --git a/global.cpp b/global.cpp new file mode 100644 index 0000000..f7f2487 --- /dev/null +++ b/global.cpp @@ -0,0 +1,35 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include +#include +#include +#include "global.h" + +QSettings settings(QStandardPaths::standardLocations(QStandardPaths::DataLocation).at(0) + "/Caesium/settings.ini", QSettings::IniFormat); +QString out_folder = ""; +bool same_folder_flag = false; +const int version_build = 170; +const QString version_string = "1.7.0"; +QString opened_list = ""; diff --git a/global.h b/global.h new file mode 100644 index 0000000..fff34a4 --- /dev/null +++ b/global.h @@ -0,0 +1,14 @@ +#ifndef GLOBAL_H +#define GLOBAL_H + +#include +#include + +extern QSettings settings; +extern QString out_folder; +extern bool same_folder_flag; +extern const int version_build; +extern const QString version_string; +extern QString opened_list; + +#endif // GLOBAL_H diff --git a/icon.ico b/icon.ico new file mode 100644 index 0000000..fce15c0 Binary files /dev/null and b/icon.ico differ diff --git a/icon.rc b/icon.rc new file mode 100644 index 0000000..471eb44 --- /dev/null +++ b/icon.rc @@ -0,0 +1 @@ +IDI_ICON1 ICON DISCARDABLE "caesium.ico" \ No newline at end of file diff --git a/icons.qrc b/icons.qrc new file mode 100644 index 0000000..d602f10 --- /dev/null +++ b/icons.qrc @@ -0,0 +1,49 @@ + + + icons/add.png + icons/added.png + icons/busy.png + icons/clear.png + icons/compress.png + icons/donate.png + icons/done.png + icons/error.png + icons/exit.png + icons/fit_window.png + icons/help.png + icons/info.png + icons/open_folder.png + icons/plus.png + icons/preview.png + icons/processing.png + icons/qt.png + icons/real_size.png + icons/remove.png + icons/savelist.png + icons/skipped.png + icons/undo.png + icons/updates.png + icons/web.png + icons/zoom_in.png + icons/zoom_out.png + icons/search.png + icons/openlist.png + icons/warning.png + icons/input_dir.png + icons/output_dir.png + icons/remove_hdd.png + icons/settings.png + icons/compression_settings.png + icons/general_settings.png + icons/locale_settings.png + icons/savelistas.png + icons/delete.png + icons/export.png + icons/load_profile.png + icons/save_profile.png + icons/loading.gif + icons/splash.png + icons/caesium_icon.png + icons/caesium_logo.png + + diff --git a/icons/add.png b/icons/add.png new file mode 100644 index 0000000..4739b76 Binary files /dev/null and b/icons/add.png differ diff --git a/icons/added.png b/icons/added.png new file mode 100644 index 0000000..634ec98 Binary files /dev/null and b/icons/added.png differ diff --git a/icons/busy.png b/icons/busy.png new file mode 100644 index 0000000..c5524f7 Binary files /dev/null and b/icons/busy.png differ diff --git a/icons/caesium_icon.png b/icons/caesium_icon.png new file mode 100644 index 0000000..d1edb68 Binary files /dev/null and b/icons/caesium_icon.png differ diff --git a/icons/caesium_icon_.png b/icons/caesium_icon_.png new file mode 100644 index 0000000..bc702e2 Binary files /dev/null and b/icons/caesium_icon_.png differ diff --git a/icons/caesium_logo.png b/icons/caesium_logo.png new file mode 100644 index 0000000..d1edb68 Binary files /dev/null and b/icons/caesium_logo.png differ diff --git a/icons/clear.png b/icons/clear.png new file mode 100644 index 0000000..5542948 Binary files /dev/null and b/icons/clear.png differ diff --git a/icons/compress.png b/icons/compress.png new file mode 100644 index 0000000..50af7c9 Binary files /dev/null and b/icons/compress.png differ diff --git a/icons/compression_setting.svg b/icons/compression_setting.svg new file mode 100644 index 0000000..a0fd144 --- /dev/null +++ b/icons/compression_setting.svg @@ -0,0 +1,777 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + Jakub Steiner + + + http://jimmac.musichall.cz + + Desktop Preferences + + + preferences + system + category + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/compression_settings.png b/icons/compression_settings.png new file mode 100644 index 0000000..97585f4 Binary files /dev/null and b/icons/compression_settings.png differ diff --git a/icons/delete.png b/icons/delete.png new file mode 100644 index 0000000..9d81526 Binary files /dev/null and b/icons/delete.png differ diff --git a/icons/donate.png b/icons/donate.png new file mode 100644 index 0000000..8a9ad39 Binary files /dev/null and b/icons/donate.png differ diff --git a/icons/done.png b/icons/done.png new file mode 100644 index 0000000..7866afb Binary files /dev/null and b/icons/done.png differ diff --git a/icons/error.png b/icons/error.png new file mode 100644 index 0000000..0e86890 Binary files /dev/null and b/icons/error.png differ diff --git a/icons/exit.png b/icons/exit.png new file mode 100644 index 0000000..e96b0f1 Binary files /dev/null and b/icons/exit.png differ diff --git a/icons/export.png b/icons/export.png new file mode 100644 index 0000000..6a80389 Binary files /dev/null and b/icons/export.png differ diff --git a/icons/fit_window.png b/icons/fit_window.png new file mode 100644 index 0000000..8ef7c4a Binary files /dev/null and b/icons/fit_window.png differ diff --git a/icons/general_setting.svg b/icons/general_setting.svg new file mode 100644 index 0000000..d41028f --- /dev/null +++ b/icons/general_setting.svg @@ -0,0 +1,398 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + Jakub Steiner + + + http://jimmac.musichall.cz + + Preferences System + + + preferences + settings + control panel + tweaks + system + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/general_settings.png b/icons/general_settings.png new file mode 100644 index 0000000..561c9fd Binary files /dev/null and b/icons/general_settings.png differ diff --git a/icons/help.png b/icons/help.png new file mode 100644 index 0000000..4be9148 Binary files /dev/null and b/icons/help.png differ diff --git a/icons/info.png b/icons/info.png new file mode 100644 index 0000000..f7c520c Binary files /dev/null and b/icons/info.png differ diff --git a/icons/input_dir.png b/icons/input_dir.png new file mode 100644 index 0000000..455cf47 Binary files /dev/null and b/icons/input_dir.png differ diff --git a/icons/load_profile.png b/icons/load_profile.png new file mode 100644 index 0000000..ed377db Binary files /dev/null and b/icons/load_profile.png differ diff --git a/icons/loading.gif b/icons/loading.gif new file mode 100644 index 0000000..16e7b64 Binary files /dev/null and b/icons/loading.gif differ diff --git a/icons/locale_setting.svg b/icons/locale_setting.svg new file mode 100644 index 0000000..2e71f18 --- /dev/null +++ b/icons/locale_setting.svg @@ -0,0 +1,878 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + Jakub Steiner + + + http://jimmac.musichall.cz + + Locale Preferences + + + locale preferences + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/locale_settings.png b/icons/locale_settings.png new file mode 100644 index 0000000..1bebc34 Binary files /dev/null and b/icons/locale_settings.png differ diff --git a/icons/minimize_to_tray.png b/icons/minimize_to_tray.png new file mode 100644 index 0000000..e756b96 Binary files /dev/null and b/icons/minimize_to_tray.png differ diff --git a/icons/open_folder.png b/icons/open_folder.png new file mode 100644 index 0000000..fcd15c0 Binary files /dev/null and b/icons/open_folder.png differ diff --git a/icons/open_list.png b/icons/open_list.png new file mode 100644 index 0000000..3432ed2 Binary files /dev/null and b/icons/open_list.png differ diff --git a/icons/openlist.png b/icons/openlist.png new file mode 100644 index 0000000..f35f258 Binary files /dev/null and b/icons/openlist.png differ diff --git a/icons/output_dir.png b/icons/output_dir.png new file mode 100644 index 0000000..ee63fd1 Binary files /dev/null and b/icons/output_dir.png differ diff --git a/icons/plus.png b/icons/plus.png new file mode 100644 index 0000000..2acdd8f Binary files /dev/null and b/icons/plus.png differ diff --git a/icons/preview.png b/icons/preview.png new file mode 100644 index 0000000..950d792 Binary files /dev/null and b/icons/preview.png differ diff --git a/icons/processing.png b/icons/processing.png new file mode 100644 index 0000000..48fe95b Binary files /dev/null and b/icons/processing.png differ diff --git a/icons/qt.png b/icons/qt.png new file mode 100644 index 0000000..23b741d Binary files /dev/null and b/icons/qt.png differ diff --git a/icons/real_size.png b/icons/real_size.png new file mode 100644 index 0000000..00e6b83 Binary files /dev/null and b/icons/real_size.png differ diff --git a/icons/remove.png b/icons/remove.png new file mode 100644 index 0000000..f812041 Binary files /dev/null and b/icons/remove.png differ diff --git a/icons/remove_hdd.png b/icons/remove_hdd.png new file mode 100644 index 0000000..f7a91db Binary files /dev/null and b/icons/remove_hdd.png differ diff --git a/icons/save_profile.png b/icons/save_profile.png new file mode 100644 index 0000000..669c0e5 Binary files /dev/null and b/icons/save_profile.png differ diff --git a/icons/savelist.png b/icons/savelist.png new file mode 100644 index 0000000..e2d7046 Binary files /dev/null and b/icons/savelist.png differ diff --git a/icons/savelistas.png b/icons/savelistas.png new file mode 100644 index 0000000..4fc2964 Binary files /dev/null and b/icons/savelistas.png differ diff --git a/icons/search.png b/icons/search.png new file mode 100644 index 0000000..950d792 Binary files /dev/null and b/icons/search.png differ diff --git a/icons/settings.png b/icons/settings.png new file mode 100644 index 0000000..6e52db7 Binary files /dev/null and b/icons/settings.png differ diff --git a/icons/skip.png b/icons/skip.png new file mode 100644 index 0000000..d30682a Binary files /dev/null and b/icons/skip.png differ diff --git a/icons/skipped.png b/icons/skipped.png new file mode 100644 index 0000000..5f6373d Binary files /dev/null and b/icons/skipped.png differ diff --git a/icons/splash.png b/icons/splash.png new file mode 100644 index 0000000..94b0d2a Binary files /dev/null and b/icons/splash.png differ diff --git a/icons/undo.png b/icons/undo.png new file mode 100644 index 0000000..7600d24 Binary files /dev/null and b/icons/undo.png differ diff --git a/icons/update.png b/icons/update.png new file mode 100644 index 0000000..e81619b Binary files /dev/null and b/icons/update.png differ diff --git a/icons/updates.png b/icons/updates.png new file mode 100644 index 0000000..7991cbf Binary files /dev/null and b/icons/updates.png differ diff --git a/icons/warning.png b/icons/warning.png new file mode 100644 index 0000000..d1e1d53 Binary files /dev/null and b/icons/warning.png differ diff --git a/icons/web.png b/icons/web.png new file mode 100644 index 0000000..10d2ed4 Binary files /dev/null and b/icons/web.png differ diff --git a/icons/zoom_in.png b/icons/zoom_in.png new file mode 100644 index 0000000..bee0d4a Binary files /dev/null and b/icons/zoom_in.png differ diff --git a/icons/zoom_out.png b/icons/zoom_out.png new file mode 100644 index 0000000..30bf28c Binary files /dev/null and b/icons/zoom_out.png differ diff --git a/imageresize.cpp b/imageresize.cpp new file mode 100644 index 0000000..10a7f4f --- /dev/null +++ b/imageresize.cpp @@ -0,0 +1,34 @@ +#include "imageresize.h" +#include + +ImageResize::ImageResize() +{ +} + +QImage ImageResize::fixedResize(QImage image, int width, int height, bool keepRatio, bool doNotEnlarge) +{ + if ((image.width() > width) || (image.height() > height) || (doNotEnlarge == false)) + { + if (width < 0 || height < 0) + { + width = image.width(); + height = image.height(); + } + if (keepRatio) + { + image = image.scaled(width, height, Qt::KeepAspectRatio, Qt::SmoothTransformation); + } + else + { + image = image.scaled(width, height, Qt::IgnoreAspectRatio, Qt::SmoothTransformation); + } + } + return image; +} + +QImage ImageResize::pergentageResize(QImage image, int width, int height) +{ + image = image.scaled(width, height, Qt::IgnoreAspectRatio, Qt::SmoothTransformation); + + return image; +} diff --git a/imageresize.h b/imageresize.h new file mode 100644 index 0000000..a4e609a --- /dev/null +++ b/imageresize.h @@ -0,0 +1,15 @@ +#ifndef IMAGERESIZE_H +#define IMAGERESIZE_H + +#include + +class ImageResize +{ +public: + ImageResize(); + QImage fixedResize(QImage image, int width, int height, bool keepRatio, bool doNotEnlarge); + QImage pergentageResize(QImage image, int width, int height); + +}; + +#endif // IMAGERESIZE_H diff --git a/lang/111.Espaî•l.qm b/lang/111.Espaî•l.qm new file mode 100644 index 0000000..abf795f Binary files /dev/null and b/lang/111.Espaî•l.qm differ diff --git a/lang/114.Svenska.qm b/lang/114.Svenska.qm new file mode 100644 index 0000000..0e4bf91 Binary files /dev/null and b/lang/114.Svenska.qm differ diff --git a/lang/25.汉语.qm b/lang/25.汉语.qm new file mode 100644 index 0000000..c662e1e Binary files /dev/null and b/lang/25.汉语.qm differ diff --git a/lang/25.漢語.qm b/lang/25.漢語.qm new file mode 100644 index 0000000..8735a84 Binary files /dev/null and b/lang/25.漢語.qm differ diff --git a/lang/30.Deutsch.qm b/lang/30.Deutsch.qm new file mode 100644 index 0000000..b6aada6 Binary files /dev/null and b/lang/30.Deutsch.qm differ diff --git a/lang/31.English.qm b/lang/31.English.qm new file mode 100644 index 0000000..df61097 Binary files /dev/null and b/lang/31.English.qm differ diff --git a/lang/37.Franĺşis.qm b/lang/37.Franĺşis.qm new file mode 100644 index 0000000..6ff8053 Binary files /dev/null and b/lang/37.Franĺşis.qm differ diff --git a/lang/43.Ελληνικά.qm b/lang/43.Ελληνικά.qm new file mode 100644 index 0000000..dd8360b Binary files /dev/null and b/lang/43.Ελληνικά.qm differ diff --git a/lang/58.Italiano.qm b/lang/58.Italiano.qm new file mode 100644 index 0000000..d643d90 Binary files /dev/null and b/lang/58.Italiano.qm differ diff --git a/lang/59.日本語.qm b/lang/59.日本語.qm new file mode 100644 index 0000000..a009948 Binary files /dev/null and b/lang/59.日本語.qm differ diff --git a/lang/66.í•śęµ­ě–´.qm b/lang/66.í•śęµ­ě–´.qm new file mode 100644 index 0000000..90f06f4 Binary files /dev/null and b/lang/66.í•śęµ­ě–´.qm differ diff --git a/lang/91.Portuguĺť° (Brasil).qm b/lang/91.Portuguĺť° (Brasil).qm new file mode 100644 index 0000000..6a64b28 Binary files /dev/null and b/lang/91.Portuguĺť° (Brasil).qm differ diff --git a/lang/96.Ń€ŃŃŃкий ŃŹĐ·Ń‹Đş.qm b/lang/96.Ń€ŃŃŃкий ŃŹĐ·Ń‹Đş.qm new file mode 100644 index 0000000..bcd7359 Binary files /dev/null and b/lang/96.Ń€ŃŃŃкий ŃŹĐ·Ń‹Đş.qm differ diff --git a/loadpreview.cpp b/loadpreview.cpp new file mode 100644 index 0000000..6ae3bed --- /dev/null +++ b/loadpreview.cpp @@ -0,0 +1,56 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include "loadpreview.h" +#include "imageresize.h" + +#include +#include +#include + +LoadPreview::LoadPreview(QString fileName, QObject *parent) : + QThread(parent) +{ + t_fileName = fileName; +} + +void LoadPreview::run() +{ + emit clearSignal(); + QString tempDir = QDir::tempPath(); + QImage image(t_fileName); + QFileInfo tempFile(tempDir + "/_caesium_/" + QFileInfo(t_fileName).fileName() + ".cae"); + if (tempFile.exists()) + { + emit loadingCompressedPreview(); + QImage image2(tempDir + "/_caesium_/" + QFileInfo(t_fileName).fileName() + ".cae"); + emit imageLoaded2(image2); + } + else + { + emit clearSignal(); + } + emit imageLoaded1(image); + this->exit(); +} diff --git a/loadpreview.h b/loadpreview.h new file mode 100644 index 0000000..48847d8 --- /dev/null +++ b/loadpreview.h @@ -0,0 +1,27 @@ +#ifndef LOADPREVIEW_H +#define LOADPREVIEW_H + +#include +#include + +class LoadPreview : public QThread +{ + Q_OBJECT +public: + explicit LoadPreview(QString fileName, QObject *parent); + void run(); + +signals: + void imageLoaded1(QImage); + void imageLoaded2(QImage); + void clearSignal(); + void loadingCompressedPreview(); + +public slots: + +private: + QString t_fileName; + +}; + +#endif // LOADPREVIEW_H diff --git a/lupdate.bat b/lupdate.bat new file mode 100644 index 0000000..88724f6 --- /dev/null +++ b/lupdate.bat @@ -0,0 +1,2 @@ +C:\Qt\Qt5.1.0\5.1.0\mingw48_32\bin\lupdate.exe C:\Users\Matteo\Documents\Progetti\Qt4\Caesium\Source\caesium.pro +pause \ No newline at end of file diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..e15900b --- /dev/null +++ b/main.cpp @@ -0,0 +1,99 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include +#include +#include +#include "caesium.h" +#include "global.h" +#include +#include + +QString findLocaleN(int n, QString dir) +{ + QDir langDir(dir + "/language"); + QStringList list = langDir.entryList(QStringList("*.qm"), QDir::Files, QDir::Name); + for (int i = list.length() - 1; i >= 0; i--) + { + QString file = list.at(i); + QStringList name = file.split("."); + if (name[0] == QString::number(n)) + { + return QString::number(n) + "." + name[1]; + } + } + return QString("31.English"); +} + +QString findLocaleS(QString string, QString dir) +{ + QDir langDir(dir + "/language"); + QStringList list = langDir.entryList(QStringList("*.qm"), QDir::Files, QDir::Name); + for (int i = list.length() - 1; i >= 0; i--) + { + QString file = list.at(i); + QStringList name = file.split("."); + if (name[1] == string) + { + return name[0] + "." + string; + } + } + return QString("31.English"); +} + +int main(int argc, char *argv[]) +{ + QApplication a(argc, argv); + Q_INIT_RESOURCE(icons); + + settings.setIniCodec("UTF-8"); + + a.addLibraryPath(a.applicationDirPath() + "/lib/"); + + int loc = QLocale::system().language(); + QString locale = settings.value("Preferences/lang").value(); + QTranslator translator; + if(locale.isEmpty()) + { + translator.load(a.applicationDirPath() + "/language/" + findLocaleN(loc, a.applicationDirPath())); + a.installTranslator(&translator); + } + else + { + translator.load(a.applicationDirPath() + "/language/" + findLocaleS(locale, a.applicationDirPath())); + a.installTranslator(&translator); + } + + QPixmap pixmap(":icons/splash.png"); + QSplashScreen splash(pixmap, Qt::WindowStaysOnTopHint); + splash.setMask(pixmap.mask()); + splash.show(); + + + Caesium w; + QTimer::singleShot(400, &splash, SLOT(close())); + QTimer::singleShot(400, &w, SLOT(show())); + + return a.exec(); +} diff --git a/preferences.cpp b/preferences.cpp new file mode 100644 index 0000000..a35c940 --- /dev/null +++ b/preferences.cpp @@ -0,0 +1,198 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include "preferences.h" +#include "ui_preferences.h" +#include "global.h" + +#include +#include +#include +#include +#include +#include +#include + +#include + + +Preferences::Preferences(QWidget *parent) : + QDialog(parent), + ui(new Ui::Preferences) +{ + ui->setupUi(this); + settings.setIniCodec("UTF-8"); + loadSettings(); + loadLanguages(); + Preferences::on_pngLevelSlider_valueChanged(settings.value("Preferences/pnglevel").value()); + //ui->menuListWidget->item(0)->setSelected(true); + connect(ui->menuListWidget, SIGNAL(currentRowChanged(int)), ui->optionStackedWidget, SLOT(setCurrentIndex(int))); + + ui->pngCompressionCheckBox->setVisible(false); + ui->pngLevelLabel->setVisible(false); + ui->pngLevelSlider->setVisible(false); + ui->levelLabel->setVisible(false); +} + +Preferences::~Preferences() +{ + delete ui; +} + +void Preferences::loadLanguages() +{ + QDir langDir(QDir::currentPath() + "/language"); + QStringList list = langDir.entryList(QStringList("*.qm"), QDir::Files, QDir::NoSort); + for (int i = list.length() - 1; i >= 0; i--) + { + QString file = list.at(i); + QStringList infoList; + QStringList name = file.split("."); + infoList << name[1]; + QTreeWidgetItem *item = new QTreeWidgetItem(infoList, 0); + item->setIcon(0, QIcon(":/icons/language/" + name[1] + ".png")); + ui->languageTreeWidget->insertTopLevelItem(0, item); + } + ui->languageTreeWidget->sortItems(0, Qt::AscendingOrder); +} + +void Preferences::loadSettings() +{ + ui->useDefaultPathCheckBox->setChecked(settings.value("Preferences/defaultpath").value()); + ui->defaultOutputLineEdit->setText(settings.value("Settings/path").value()); + if (settings.value("Preferences/imageview").value() == "fit") + { + ui->fitWindowRadio->setChecked(true); + ui->originalSizeRadio->setChecked(false); + } + else + { + ui->fitWindowRadio->setChecked(false); + ui->originalSizeRadio->setChecked(true); + } + ui->checkUpdatesCheckBox->setChecked(settings.value("Preferences/startupupdt").value()); + ui->keepExifCheckBox->setChecked(settings.value("Preferences/exif").value()); + ui->doNotEnlargeCheckBox->setChecked(settings.value("Preferences/noenlarge").value()); + ui->deleteCheckBox->setChecked(settings.value("Preferences/delete").value()); + ui->keepDateCheckBox->setChecked(settings.value("Preferences/keepdate").value()); + ui->scanSubDirCheckBox->setChecked(settings.value("Preferences/scansubdir").value()); + ui->promptBeforeExitCheckBox->setChecked(settings.value("Preferences/promptexit").value()); + ui->loadLastProfileCheckBox->setChecked(settings.value("Preferences/loadprofile").value()); + ui->restoreStateCheckBox->setChecked(settings.value("Preferences/restorelayout").value()); + ui->dontExtensionCheckBox->setChecked(settings.value("Preferences/dontextension").value()); + ui->styleComboBox->setCurrentIndex(settings.value("Preferences/style_index").value()); + ui->pngCompressionCheckBox->setChecked(settings.value("Preferences/pngcompression").value()); + ui->pngLevelSlider->setValue(settings.value("Preferences/pnglevel").value()); + ui->loadLastListCheckBox->setChecked(settings.value("Preferences/loadlastlist").value()); +} + + +void Preferences::on_browseToolButton_clicked() +{ + QString outputPath = QFileDialog::getExistingDirectory(this, tr("Select default output directory"), + "/home", + QFileDialog::ShowDirsOnly + | QFileDialog::DontResolveSymlinks); + if (outputPath != "") + { + ui->defaultOutputLineEdit->setText(outputPath); + } +} + + +void Preferences::on_OKButton_clicked() +{ + Preferences::on_applyButton_clicked(); + + this->close(); +} + +void Preferences::on_cancelButton_clicked() +{ + this->close(); +} + +void Preferences::on_applyButton_clicked() +{ + QDir dir(ui->defaultOutputLineEdit->text()); + if (ui->defaultOutputLineEdit->text() == "") + { + ui->useDefaultPathCheckBox->setChecked(false); + } + else if (!dir.exists() && ui->defaultOutputLineEdit->isEnabled() == true) + { + dir.mkpath(ui->defaultOutputLineEdit->text()); + } + settings.setValue("Preferences/defaultpath", ui->useDefaultPathCheckBox->isChecked()); + settings.setValue("Settings/path", ui->defaultOutputLineEdit->text()); + if (ui->originalSizeRadio->isChecked()) + { + settings.setValue("Preferences/imageview", "orig"); + } + else + { + settings.setValue("Preferences/imageview", "fit"); + } + settings.setValue("Preferences/startupupdt", ui->checkUpdatesCheckBox->isChecked()); + settings.setValue("Preferences/exif", ui->keepExifCheckBox->isChecked()); + settings.setValue("Preferences/noenlarge", ui->doNotEnlargeCheckBox->isChecked()); + settings.setValue("Preferences/delete", ui->deleteCheckBox->isChecked()); + settings.setValue("Preferences/keepdate", ui->keepDateCheckBox->isChecked()); + settings.setValue("Preferences/scansubdir", ui->scanSubDirCheckBox->isChecked()); + settings.setValue("Preferences/promptexit", ui->promptBeforeExitCheckBox->isChecked()); + settings.setValue("Preferences/loadprofile", ui->loadLastProfileCheckBox->isChecked()); + settings.setValue("Preferences/restorelayout", ui->restoreStateCheckBox->isChecked()); + settings.setValue("Preferences/style_index", ui->styleComboBox->currentIndex()); + settings.setValue("Preferences/style", ui->styleComboBox->currentText()); + settings.setValue("Preferences/dontextension", ui->dontExtensionCheckBox->isChecked()); + settings.setValue("Preferences/pngcompression", ui->pngCompressionCheckBox->isChecked()); + settings.setValue("Preferences/pnglevel", ui->pngLevelSlider->value()); + settings.setValue("Preferences/loadlastlist", ui->loadLastListCheckBox->isChecked()); + if (ui->languageTreeWidget->selectedItems().count() != 0) + { + settings.setValue("Preferences/lang", ui->languageTreeWidget->selectedItems().at(0)->text(0)); + QMessageBox::information(this, + tr("Information"), + tr("You need to restart the application before\nchanges take effect"), + QMessageBox::Ok); + } + QApplication::setStyle(QStyleFactory::create(ui->styleComboBox->currentText())); + QApplication::setPalette(QApplication::style()->standardPalette()); +} + +void Preferences::on_pngLevelSlider_valueChanged(int position) +{ + if (position <= 2) + { + ui->pngLevelLabel->setText("" + tr("Soft (Fastest)") + ""); + } + else if (position <= 5) + { + ui->pngLevelLabel->setText(tr("Medium (Average)")); + } + else + { + ui->pngLevelLabel->setText("" + tr("Hard (Slowest)") + ""); + } +} diff --git a/preferences.h b/preferences.h new file mode 100644 index 0000000..0c7f668 --- /dev/null +++ b/preferences.h @@ -0,0 +1,31 @@ +#ifndef PREFERENCES_H +#define PREFERENCES_H + +#include + +namespace Ui { + class Preferences; +} + +class Preferences : public QDialog +{ + Q_OBJECT + +public: + explicit Preferences(QWidget *parent = 0); + ~Preferences(); + +private: + Ui::Preferences *ui; + +private slots: + void on_cancelButton_clicked(); + void on_OKButton_clicked(); + void on_browseToolButton_clicked(); + void loadSettings(); + void loadLanguages(); + void on_applyButton_clicked(); + void on_pngLevelSlider_valueChanged(int position); +}; + +#endif // PREFERENCES_H diff --git a/preferences.ui b/preferences.ui new file mode 100644 index 0000000..ff80eeb --- /dev/null +++ b/preferences.ui @@ -0,0 +1,917 @@ + + + Preferences + + + Qt::ApplicationModal + + + + 0 + 0 + 525 + 400 + + + + + 393 + 242 + + + + + 1000 + 1000 + + + + Preferences + + + + :/icons/settings.png:/icons/settings.png + + + true + + + + + + + 0 + 0 + + + + + 110 + 0 + + + + + 110 + 16777215 + + + + + + + + 80 + 80 + + + + QListView::Static + + + 10 + + + QListView::IconMode + + + + General + + + + :/icons/general_settings.png:/icons/general_settings.png + + + + + Compression + + + + :/icons/compression_settings.png:/icons/compression_settings.png + + + + + Language + + + + :/icons/locale_settings.png:/icons/locale_settings.png + + + + + + + + + + + 1 + + + 0 + + + + + 3 + + + 0 + + + + + + 0 + 0 + + + + + + + Default Path + + + + 3 + + + 3 + + + 3 + + + 3 + + + 3 + + + + + + + + 0 + 0 + + + + + + + Use a default output directory if none is specified + + + false + + + + + + + false + + + + + + + + + + + + + ... + + + + + + + + + + + + + 0 + 0 + + + + + + + Default Image View + + + + 3 + + + 3 + + + 3 + + + 3 + + + 3 + + + + + + + + + + Original Size + + + true + + + buttonGroup + + + + + + + + + + Fit Window + + + buttonGroup + + + + + + + + + + + + + + + Scan subdirectories when you open a folder + + + false + + + + + + + + + + Load the last used profile at startup + + + false + + + + + + + Restore last used list at startup + + + + + + + + + + Prompt before exit + + + false + + + + + + + + + + Check for updates at startup + + + true + + + + + + + Restore window size and layout at startup + + + true + + + + + + + Qt::Horizontal + + + + + + + + + + 0 + 0 + + + + Style + + + + + + + + 0 + 0 + + + + 0 + + + + Windows + + + + + WindowsXP + + + + + WindowsVista + + + + + Motif + + + + + CDE + + + + + Plastique + + + + + Cleanlooks + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + 3 + + + 0 + + + + + Keep EXIF Information while compressing + + + true + + + + + + + Keep the original Date Information + + + true + + + + + + + Skip if the output size is greater than the original + + + + + + + Delete the original file from disk + + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + false + + + Don't delete if input extension is different from output one + + + + + + + + + Optimize PNG files during compression + + + + + + + 6 + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + + 0 + 0 + + + + Level: + + + + + + + false + + + + 0 + 0 + + + + + 180 + 0 + + + + + 16777215 + 25 + + + + 7 + + + 2 + + + 4 + + + Qt::Horizontal + + + QSlider::TicksBothSides + + + + + + + false + + + Medium (Average) + + + Qt::RichText + + + Qt::AlignCenter + + + 0 + + + 0 + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + 3 + + + 0 + + + 0 + + + 0 + + + + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + 0 + + + true + + + false + + + false + + + true + + + 1 + + + + Language + + + + + + + + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + OK + + + + + + + + + + Cancel + + + + + + + + + + Apply + + + + + + + + + + + + + + 255 + 255 + 255 + + + + + + + 208 + 221 + 225 + + + + + + + + + 255 + 255 + 255 + + + + + + + 208 + 221 + 225 + + + + + + + + + 208 + 221 + 225 + + + + + + + 208 + 221 + 225 + + + + + + + + + 11 + 75 + true + PreferDefault + + + + true + + + + + + + + + Qt::AlignCenter + + + + + + + + + + + useDefaultPathCheckBox + toggled(bool) + defaultOutputLineEdit + setEnabled(bool) + + + 214 + 52 + + + 211 + 78 + + + + + menuListWidget + currentTextChanged(QString) + titleLabel + setText(QString) + + + 72 + 13 + + + 275 + 17 + + + + + deleteCheckBox + toggled(bool) + dontExtensionCheckBox + setEnabled(bool) + + + 352 + 118 + + + 379 + 143 + + + + + pngCompressionCheckBox + toggled(bool) + pngLevelSlider + setEnabled(bool) + + + 236 + 161 + + + 260 + 183 + + + + + pngCompressionCheckBox + toggled(bool) + pngLevelLabel + setEnabled(bool) + + + 323 + 161 + + + 479 + 189 + + + + + + + + diff --git a/qdroptreewidget.cpp b/qdroptreewidget.cpp new file mode 100644 index 0000000..e0b555d --- /dev/null +++ b/qdroptreewidget.cpp @@ -0,0 +1,320 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include "qdroptreewidget.h" +#include "global.h" +#include "caesium.h" + +#include +#include +#include + +QDropTreeWidget::QDropTreeWidget(QWidget *parent) + : QTreeWidget(parent) +{ + createActions(); + createMenus(); +} + +bool QDropTreeWidget::d_duplicateCheck(QString name, QString dir) +{ + for (int i = 0; i < this->topLevelItemCount(); i++) + { + if (name == this->topLevelItem(i)->text(0) && dir == this->topLevelItem(i)->text(5)) + { + return false; + } + } + return true; +} + +bool checkExtension(QString extension) +{ + if (extension.toLower() == "jpg" || extension.toLower() == "png" || extension.toLower() == "bmp" || extension.toLower() == "jpeg" || extension.toLower() == "tif" || extension.toLower() == "tiff" || extension.toLower() == "ppm" || extension.toLower() == "xbm" || extension.toLower() == "xpm") + { + return true; + } + return false; +} + +QStringList findFilesRecursivelyDrop(QString directory_path, QStringList filters) +{ + QStringList result; + QDirIterator directory_walker(directory_path, filters, QDir::Files | QDir::NoSymLinks, QDirIterator::Subdirectories); + directory_path.replace('\\', '/'); + directory_path.append('/'); + QString full_path; + while(directory_walker.hasNext()) + { + directory_walker.next(); + full_path = directory_walker.fileInfo().filePath(); + + result << full_path.replace(directory_path, "", Qt::CaseSensitive); + } + return result; +} + +QString getFormattedResolutionDrop(QString source) +{ + return QString::number(QImageReader(QFileInfo(source).absoluteFilePath()).size().width()) + "x" + QString::number(QImageReader(QFileInfo(source).absoluteFilePath()).size().height()); +} + +QString d_fixedSize(int size, int flag) +{ + double sizeD = (double) size; + if (flag == 1 && sizeD > 1024*1024) + { + return QString::number(sizeD/1024/1024, 'f', 2) + " Mb"; + } + if (sizeD < 1024 && sizeD > -1) + { + return QString::number(sizeD, 'f', 2) + " Bytes"; + } + else + { + return QString::number(sizeD/1024, 'f', 2) + " Kb"; + } +} + +void QDropTreeWidget::dragEnterEvent(QDragEnterEvent *event) +{ + event->acceptProposedAction(); +} + +void QDropTreeWidget::dragMoveEvent(QDragMoveEvent *event) +{ + event->accept(); +} + +void QDropTreeWidget::dropEvent(QDropEvent *event) +{ + const QMimeData *mimeData = event->mimeData(); + QList urlList = mimeData->urls(); + if (mimeData->hasFormat("text/uri-list")) + { + for (int i = urlList.size() - 1; i >= 0 ; i--) + { + QString path = urlList.at(i).path(); + path = path.right(path.length() - 1); + QFileInfo *fileInfo = new QFileInfo(path); + QStringList infoList; + if (checkExtension(fileInfo->suffix()) && QDropTreeWidget::d_duplicateCheck(fileInfo->fileName(), fileInfo->absoluteFilePath())) + { + infoList << fileInfo->fileName() << d_fixedSize(fileInfo->size(), 0) << "" << "" << "" << getFormattedResolutionDrop(fileInfo->absoluteFilePath()) << "" << fileInfo->absoluteFilePath(); + QTreeWidgetItem *item = new QTreeWidgetItem(infoList, 0); + item->setIcon(0, QIcon(":/icons/added.png")); + this->insertTopLevelItem(0, item); + } + else if (QDir(path).exists()) + { + QDropTreeWidget::importFolder(path); + } + } + } + event->acceptProposedAction(); + emit countUpdate(); + emit structure(urlList.at(0).path()); +} + +void QDropTreeWidget::contextMenuEvent(QContextMenuEvent *event) +{ + QTreeWidgetItem* item = itemAt(event->pos()); + if (item) + { + originalAction->setEnabled(checkInput()); + destinationAction->setEnabled(checkDestination()); + itemMenu->exec(event->globalPos()); + } + else + { + clearAction->setEnabled(this->topLevelItemCount() > 0); + noItemMenu->exec(event->globalPos()); + } +} + +void QDropTreeWidget::createActions() +{ + clearAction = new QAction(QIcon(":/icons/clear.png"), tr("Clear list"), this); + connect(clearAction, SIGNAL(triggered()), this, SLOT(actionClear())); + + previewAction = new QAction(QIcon(":/icons/preview.png"), tr("Preview"), this); + connect(previewAction, SIGNAL(triggered()), this, SLOT(actionPreview())); + + removeAction = new QAction(QIcon(":/icons/remove.png"), tr("Remove item"), this); + connect(removeAction, SIGNAL(triggered()), this, SLOT(actionRemove())); + + addAction = new QAction(QIcon(":/icons/add.png"), tr("Add pictures..."), this); + connect(addAction, SIGNAL(triggered()), this, SLOT(actionAdd())); + + addFolderAction = new QAction(QIcon(":/icons/open_folder.png"), tr("Open folder..."), this); + connect(addFolderAction, SIGNAL(triggered()), this, SLOT(actionAddFolder())); + + destinationAction = new QAction(QIcon(":/icons/output_dir.png"), tr("Open destination folder"), this); + connect(destinationAction, SIGNAL(triggered()), this, SLOT(openDestination())); + + originalAction = new QAction(QIcon(":/icons/input_dir.png"), tr("Open input folder"), this); + connect(originalAction, SIGNAL(triggered()), this, SLOT(openInput())); + + removeFromHDDAction = new QAction(QIcon(":/icons/remove_hdd.png"), tr("Remove from list and Hard Disk"), this); + connect(removeFromHDDAction, SIGNAL(triggered()), this, SLOT(actionRemoveFromHDD())); +} + +void QDropTreeWidget::createMenus() +{ + noItemMenu = new QMenu(this); + noItemMenu->addAction(addAction); + noItemMenu->addAction(addFolderAction); + noItemMenu->addSeparator(); + noItemMenu->addAction(clearAction); + + itemMenu = new QMenu(this); + itemMenu->addAction(addAction); + itemMenu->addAction(addFolderAction); + itemMenu->addSeparator(); + itemMenu->addAction(removeAction); + itemMenu->addAction(removeFromHDDAction); + itemMenu->addAction(clearAction); + itemMenu->addSeparator(); + itemMenu->addAction(previewAction); + itemMenu->addSeparator(); + itemMenu->addAction(originalAction); + itemMenu->addAction(destinationAction); +} + +void QDropTreeWidget::actionPreview() +{ + emit preview(); +} + +void QDropTreeWidget::actionAdd() +{ + emit add(); +} + +void QDropTreeWidget::actionAddFolder() +{ + emit addFolder(); +} + +void QDropTreeWidget::actionRemove() +{ + emit remove(); +} + +void QDropTreeWidget::actionRemoveFromHDD() +{ + emit removeHDD(); +} + +void QDropTreeWidget::actionClear() +{ + emit a_clear(); +} + +void QDropTreeWidget::openDestination() +{ + if (!same_folder_flag) + { + QDesktopServices::openUrl(QUrl("file:///" + out_folder)); + } + else + { + QDropTreeWidget::openInput(); + } +} + +void QDropTreeWidget::openInput() +{ + QFileInfo info(this->selectedItems().at(0)->text(5)); + QDesktopServices::openUrl(QUrl("file:///" + info.absolutePath())); +} + +bool QDropTreeWidget::checkDestination() +{ + if (same_folder_flag) + { + return QDropTreeWidget::checkInput(); + } + else if (out_folder == "") + { + return false; + } + else + { + return true; + } +} + +bool QDropTreeWidget::checkInput() +{ + QFileInfo first; + QFileInfo second; + for (int i = 0; i < this->selectedItems().count() - 1; i++) + { + first.setFile(this->selectedItems().at(i)->text(5)); + second.setFile(this->selectedItems().at(i + 1)->text(5)); + if (QString::compare(first.absolutePath(), second.absolutePath()) != 0) + { + return false; + } + } + return true; +} + +void QDropTreeWidget::importFolder(QString directory) +{ + QStringList filters, fileList; + filters << "*.bmp" << "*.jpg" << "*.jpeg" << "*.tif" << "*.png" << "*.ppm" << "*.xbm" << "*.xpm"; + if(settings.value("Preferences/scansubdir").value()) + { + fileList = findFilesRecursivelyDrop(directory, filters); + } + else + { + QDir qDir(directory); + qDir.setNameFilters(filters); + fileList = qDir.entryList(filters); + } + + for (int i = fileList.size() - 1; i > 0 - 1; i--) + { + QFileInfo *fileInfo = new QFileInfo(directory + "/" + fileList.at(i)); + QStringList infoList; + if (QDropTreeWidget::d_duplicateCheck(fileInfo->fileName(), fileInfo->absoluteFilePath())) + { + infoList << fileInfo->fileName() << d_fixedSize(fileInfo->size(), 0) << "" << "" << "" << getFormattedResolutionDrop(fileInfo->absoluteFilePath()) << "" << fileInfo->absoluteFilePath(); + QTreeWidgetItem *item = new QTreeWidgetItem(infoList, 0); + item->setIcon(0, QIcon(":/icons/added.png")); + this->insertTopLevelItem(0, item); + } + } + + if (directory != "") + { + settings.setValue("Settings/dir", directory); + } + + emit countUpdate(); + emit structure(directory); +} diff --git a/qdroptreewidget.h b/qdroptreewidget.h new file mode 100644 index 0000000..57f30fc --- /dev/null +++ b/qdroptreewidget.h @@ -0,0 +1,64 @@ +#ifndef QDROPTREEWIDGET_H +#define QDROPTREEWIDGET_H + +#include + +class QMimeData; + +class QDropTreeWidget : public QTreeWidget +{ + Q_OBJECT + +public: + QDropTreeWidget(QWidget *parent = 0); + +private slots: + bool d_duplicateCheck(QString name, QString dir); + void actionPreview(); + void actionRemove(); + void actionAdd(); + void actionAddFolder(); + void openDestination(); + void openInput(); + void actionRemoveFromHDD(); + void actionClear(); + +signals: + void countUpdate(); + void structure(QString path); + void preview(); + void remove(); + void add(); + void addFolder(); + void destination(); + void input(); + void removeHDD(); + void a_clear(); + +protected: + void dragEnterEvent(QDragEnterEvent *event); + void dragMoveEvent(QDragMoveEvent *event); + void dropEvent(QDropEvent *event); + void contextMenuEvent(QContextMenuEvent *event); + +private: + void createActions(); + void createMenus(); + bool checkDestination(); + bool checkInput(); + void importFolder(QString directory); + + QTreeWidget *dropTreeWidget(); + QMenu *itemMenu; + QMenu *noItemMenu; + QAction *clearAction; + QAction *previewAction; + QAction *removeAction; + QAction *addAction; + QAction *addFolderAction; + QAction *destinationAction; + QAction *originalAction; + QAction *removeFromHDDAction; +}; + +#endif // QDROPTREEWIDGET_H diff --git a/startupupdater.cpp b/startupupdater.cpp new file mode 100644 index 0000000..d4c2e31 --- /dev/null +++ b/startupupdater.cpp @@ -0,0 +1,64 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include "startupupdater.h" +#include "caesium.h" +#include "ui_caesium.h" +#include "global.h" + +#include + +StartupUpdater::StartupUpdater(QObject *parent): QThread(parent) +{ } + +void StartupUpdater::run() +{ + QNetworkAccessManager *m_NetworkMngr = new QNetworkAccessManager(); + QString url = "http://caesium.sourceforge.net/current_version.txt"; + connect(m_NetworkMngr, SIGNAL(finished(QNetworkReply*)), this, SLOT(downloadFinished(QNetworkReply*))); + m_NetworkMngr->get(QNetworkRequest(url)); + this->exec(); +} + +void StartupUpdater::downloadFinished(QNetworkReply* reply) +{ + if(reply->error() == QNetworkReply::NoError) + { + QString version = reply->readAll(); + if (version_build < version.toInt()) + { + emit showLabel(true); + } + else + { + emit showLabel(false); + } + } + else + { + emit showLabel(false); + } + reply->close(); + this->exit(0); +} diff --git a/startupupdater.h b/startupupdater.h new file mode 100644 index 0000000..7af6377 --- /dev/null +++ b/startupupdater.h @@ -0,0 +1,26 @@ +#ifndef STARTUPUPDATER_H +#define STARTUPUPDATER_H + +#include +#include +#include + +class StartupUpdater : public QThread +{ + Q_OBJECT + +public: + StartupUpdater(QObject *parent); + void run(); + +private slots: + void downloadFinished(QNetworkReply*); + +private: + +signals: + void showLabel(bool flag); + +}; + +#endif // STARTUPUPDATER_H diff --git a/tools/caesium.ui b/tools/caesium.ui new file mode 100644 index 0000000..ae76432 --- /dev/null +++ b/tools/caesium.ui @@ -0,0 +1,1494 @@ + + + Caesium + + + + 0 + 0 + 900 + 552 + + + + Caesium - Image Compressor + + + + :/icons/caesium_icon.png:/icons/caesium_icon.png + + + + + 4 + + + + + + 0 + 0 + + + + + + + QFrame::Plain + + + 2 + + + 1 + + + Qt::Horizontal + + + true + + + false + + + + + + + + 1 + + + + + + 0 + 0 + + + + Qt::StrongFocus + + + Qt::DefaultContextMenu + + + true + + + + + + false + + + false + + + QAbstractItemView::DropOnly + + + Qt::IgnoreAction + + + true + + + QAbstractItemView::ExtendedSelection + + + + 16 + 16 + + + + QAbstractItemView::ScrollPerItem + + + 0 + + + true + + + true + + + true + + + + Name + + + + + Size + + + + + New Size + + + + + Ratio + + + + + Quality + + + + + Full Path + + + + + + + + + + + + + Add + + + + :/icons/plus.png:/icons/plus.png + + + true + + + + + + + + + + Remove + + + + :/icons/remove.png:/icons/remove.png + + + + + + + + + + Preview + + + + :/icons/search.png:/icons/search.png + + + + + + + + + + Qt::Horizontal + + + QSizePolicy::MinimumExpanding + + + + 40 + 20 + + + + + + + + + 0 + 0 + + + + + 16777215 + 18 + + + + + + + + + 170 + 0 + 255 + + + + + + + + + 170 + 0 + 255 + + + + + + + + + 120 + 120 + 120 + + + + + + + + + 7 + 75 + true + true + + + + + + + A new version is available! + + + true + + + + + + + + + + + + Qt::Horizontal + + + + + + + 1 + + + + + + + + Compression Options + + + + 6 + + + + + + + + + + + + Quality: + + + + + + + + + + 1 + + + 100 + + + 5 + + + 80 + + + Qt::Horizontal + + + QSlider::TicksBelow + + + 10 + + + + + + + + + + 1 + + + 100 + + + 80 + + + + + + + + + + + + + + + + Same Quality For All + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + Set Quality + + + + + + + + + + + + 0 + 0 + + + + + 44 + 16777215 + + + + + + + Format: + + + + + + + + 0 + 0 + + + + + + + + JPG + + + + + PNG + + + + + BMP + + + + + + + + + 16777215 + 20 + + + + + 8 + + + + + + + I can't set the quality! + + + + :/icons/help.png:/icons/help.png + + + + 16 + 16 + + + + true + + + + + + + Qt::Horizontal + + + + 20 + 20 + + + + + + + + + + + + + + + + Output Folder + + + + 3 + + + 6 + + + + + + + + + + + + + + + + + + + ... + + + + + + + + + + + + + + Remember Last Folder + + + + + + + + + + Same Folder as Input + + + + + + + + + + + + 0 + 0 + + + + + + + Suffix: + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + :/icons/undo.png:/icons/undo.png + + + + 14 + 14 + + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 14 + + + + + + + + + 255 + 0 + 0 + + + + + + + 255 + 0 + 0 + + + + + + + + + 255 + 0 + 0 + + + + + + + 255 + 0 + 0 + + + + + + + + + 120 + 120 + 120 + + + + + + + 120 + 120 + 120 + + + + + + + + + 75 + true + + + + + + + Not allowed! + + + + + + + + + + + + + + + + + + + Qt::Vertical + + + + + + + 1 + + + + + + 0 + 0 + + + + + + + Waiting... + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 17 + + + + + + + 100 + + + 0 + + + + + + + false + + + + 0 + 0 + + + + + 16777215 + 20 + + + + + + + Cancel + + + + + + + + 0 + 0 + + + + + 16777215 + 20 + + + + The original files will be deleted! + + + + :/icons/warning.png:/icons/warning.png + + + + 14 + 14 + + + + true + + + + + + + + + + + + + + + + 3 + + + + + + 0 + 0 + + + + + + + false + + + Qt::AlignCenter + + + + + 8 + 0 + 176 + 223 + + + + + + + + + + 0 + 0 + + + + + + + false + + + Qt::AlignCenter + + + + + 8 + 0 + 176 + 223 + + + + + + + + + 3 + + + QLayout::SetNoConstraint + + + + + false + + + + 0 + 0 + + + + + + + + + + + :/icons/fit_window.png:/icons/fit_window.png + + + + + + + false + + + + + + + + + + :/icons/real_size.png:/icons/real_size.png + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + false + + + + 8 + 75 + true + + + + + + + + + + + :/icons/zoom_out.png:/icons/zoom_out.png + + + + + + + false + + + + + + + + + + :/icons/zoom_in.png:/icons/zoom_in.png + + + + + + + + + + + + + + + + + 0 + 0 + 900 + 21 + + + + + File + + + + + + + + + + + + + + + + + + Edit + + + + + + + + + + Action + + + + + + + + View + + + + + + Help + + + + + + + + + + + + + + Tools + + + + + + + + + + + + + Qt::NoContextMenu + + + true + + + + 32 + 32 + + + + true + + + TopToolBarArea + + + false + + + + + + + + + + + + + + + + + + + + + + :/icons/add.png:/icons/add.png + + + Add Pictures... + + + Ctrl+O + + + + + + :/icons/openlist.png:/icons/openlist.png + + + Open List... + + + Ctrl+L + + + + + + :/icons/savelist.png:/icons/savelist.png + + + Save List As... + + + Ctrl+S + + + + + + :/icons/exit.png:/icons/exit.png + + + Exit + + + Ctrl+Q + + + + + + :/icons/remove.png:/icons/remove.png + + + Remove Item + + + Del + + + + + + :/icons/clear.png:/icons/clear.png + + + Clear List + + + Ctrl+Del + + + + + + :/icons/preview.png:/icons/preview.png + + + Preview + + + Ctrl+P + + + + + + :/icons/compress.png:/icons/compress.png + + + Compress! + + + Return + + + + + + :/icons/help.png:/icons/help.png + + + Online Support + + + + + + :/icons/web.png:/icons/web.png + + + Website + + + Ctrl+W + + + + + + :/icons/updates.png:/icons/updates.png + + + Check for Updates + + + + + + :/icons/donate.png:/icons/donate.png + + + Donate to Caesium + + + + + + :/icons/info.png:/icons/info.png + + + About + + + + + + :/icons/qt.png:/icons/qt.png + + + About Qt + + + + + true + + + true + + + Show Toolbar + + + + + + :/icons/settings.png:/icons/settings.png + + + Settings + + + + + + :/icons/open_folder.png:/icons/open_folder.png + + + Open Folder... + + + Ctrl+Shift+O + + + + + + :/icons/remove_hdd.png:/icons/remove_hdd.png + + + Remove Item From List and Hard Disk + + + Ctrl+Shift+D + + + + + New Project... + + + + + Open Project... + + + + + Save Project + + + + + Save List + + + + + Save Project As... + + + + + Find Item... + + + + + + + QDropTreeWidget + QTreeWidget +
qdroptreewidget.h
+
+
+ + + + + + qualitySlider + sliderMoved(int) + qualitySpinBox + setValue(int) + + + 163 + 419 + + + 346 + 433 + + + + + qualitySpinBox + valueChanged(int) + qualitySlider + setValue(int) + + + 346 + 433 + + + 298 + 435 + + + + + sameFolderCheckBox + clicked(bool) + outputLineEdit + setDisabled(bool) + + + 675 + 449 + + + 636 + 417 + + + + + sameFolderCheckBox + clicked(bool) + browseToolButton + setDisabled(bool) + + + 697 + 461 + + + 697 + 431 + + + + + qualitySlider + valueChanged(int) + qualitySpinBox + setValue(int) + + + 150 + 420 + + + 346 + 433 + + + + +
diff --git a/tools/exif_copy.py b/tools/exif_copy.py new file mode 100644 index 0000000..f843f27 --- /dev/null +++ b/tools/exif_copy.py @@ -0,0 +1,42 @@ +# ****************************************************************************** +# +# Copyright (C) 2010-2011 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ****************************************************************************** + +import pyexiv2 +import sys +import win32_unicode_argv + +source_image = pyexiv2.ImageMetadata(sys.argv[1]) +source_image.read() +dest_image = pyexiv2.ImageMetadata(sys.argv[2]) +dest_image.read() + +for key in source_image.exif_keys: + try: + value = source_image[key].value + dest_image[key] = value + except: + pass + +dest_image.write() + diff --git a/tools/setup.py b/tools/setup.py new file mode 100644 index 0000000..9418a20 --- /dev/null +++ b/tools/setup.py @@ -0,0 +1,4 @@ +from distutils.core import setup +import py2exe + +setup(console=['exif_copy.py']) \ No newline at end of file diff --git a/tools/win32_unicode_argv.py b/tools/win32_unicode_argv.py new file mode 100644 index 0000000..4bdb90d --- /dev/null +++ b/tools/win32_unicode_argv.py @@ -0,0 +1,46 @@ +""" +win32_unicode_argv.py + +Importing this will replace sys.argv with a full Unicode form. +Windows only. + +From this site, with adaptations: + http://code.activestate.com/recipes/572200/ + +Usage: simply import this module into a script. sys.argv is changed to +be a list of Unicode strings. +""" + + +import sys + +def win32_unicode_argv(): + """Uses shell32.GetCommandLineArgvW to get sys.argv as a list of Unicode + strings. + + Versions 2.x of Python don't support Unicode in sys.argv on + Windows, with the underlying Windows API instead replacing multi-byte + characters with '?'. + """ + + from ctypes import POINTER, byref, cdll, c_int, windll + from ctypes.wintypes import LPCWSTR, LPWSTR + + GetCommandLineW = cdll.kernel32.GetCommandLineW + GetCommandLineW.argtypes = [] + GetCommandLineW.restype = LPCWSTR + + CommandLineToArgvW = windll.shell32.CommandLineToArgvW + CommandLineToArgvW.argtypes = [LPCWSTR, POINTER(c_int)] + CommandLineToArgvW.restype = POINTER(LPWSTR) + + cmd = GetCommandLineW() + argc = c_int(0) + argv = CommandLineToArgvW(cmd, byref(argc)) + if argc.value > 0: + # Remove Python executable and commands if present + start = argc.value - len(sys.argv) + return [argv[i] for i in + xrange(start, argc.value)] + +sys.argv = win32_unicode_argv() diff --git a/tools/win32_unicode_argv.pyc b/tools/win32_unicode_argv.pyc new file mode 100644 index 0000000..2313b17 Binary files /dev/null and b/tools/win32_unicode_argv.pyc differ diff --git a/updater.cpp b/updater.cpp new file mode 100644 index 0000000..cad7c68 --- /dev/null +++ b/updater.cpp @@ -0,0 +1,235 @@ +/******************************************************************************* +# +# Copyright (C) 2010-2013 Matteo Paonessa +# +# This file is part of the Caesium distribution. +# +# Caesium is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# Caesium is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Caesium; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. +# +# Author: Matteo Paonessa +# +# ******************************************************************************/ + +#include "updater.h" +#include "ui_updater.h" +#include "global.h" +#include +#include +#include + +#include +#include + +QString c_v = ""; +QString fileName; +int d = 0, p = 0; +bool downFinished = false, start_pressed = false; +QNetworkReply *g_reply; + +Updater::Updater(QWidget *parent) : + QDialog(parent), + ui(new Ui::Updater) +{ + ui->setupUi(this); + + u_parent = parent; + + ui->progressBar->setValue(1); + ui->progressBar->setRange(0,0); + + ui->versionLabel->setText(ui->versionLabel->text() + " " + version_string + ""); + initGetCurrentVersion(); +} + +Updater::~Updater() +{ + delete ui; +} + +QString buildToString(QString build) +{ + build.insert(1, "."); + build.insert(3, "."); + return build; +} + +QString toRealURL(QString u) +{ + QStringList splitted; + splitted = u.split('='); + return "http://" + splitted[1] + ".dl.sourceforge.net/project/caesium/" + c_v + "/" + fileName; +} + +void Updater::initGetCurrentVersion() +{ + QString url = "http://caesium.sourceforge.net/current_version.txt"; + QNetworkAccessManager *m_NetworkMngr = new QNetworkAccessManager(this); + m_NetworkMngr->get(QNetworkRequest(QUrl(url))); + connect(m_NetworkMngr, SIGNAL(finished(QNetworkReply*)), this, SLOT(getCurrentVersion(QNetworkReply*))); +} + +void Updater::getCurrentVersion(QNetworkReply *reply) +{ + if (reply->error() == QNetworkReply::NoError) + { + QString reply_result = reply->readAll(); + int c_v_int = reply_result.toInt(); + c_v = buildToString(reply_result); + reply->close(); + ui->statusLabel->setText(tr("Caesium current version is: ") + "" + c_v + ""); + ui->progressBar->setRange(0,1); + if (c_v_int > version_build) + { + ui->startButton->setEnabled(true); + } + fileName = "caesium-" + c_v + "-win.exe"; + getChangelog(); + } + else if (reply->error() == QNetworkReply::TimeoutError) + { + ui->statusLabel->setText(tr("ERROR: Connection timed out...")); + ui->progressBar->setRange(0,1); + } + else if (reply->error() == 2) + { + QDesktopServices::openUrl(QUrl("http://caesium.sourceforge.net/index.html#download")); + ui->statusLabel->setText(tr("Server connection closed. Please download the new version manually.")); + ui->progressBar->setRange(0,1); + } + else + { + ui->statusLabel->setText(tr("An error occurred. Please check your internet connection.")); + qDebug() << reply->errorString() << reply->error(); + ui->progressBar->setRange(0,1); + } + ui->progressBar->setValue(0); +} + +void Updater::on_startButton_clicked() +{ + start_pressed = true; + downFinished = false; + ui->startButton->setEnabled(false); + QString url = "http://downloads.sourceforge.net/project/caesium/" + c_v + "/" + fileName; + ui->statusLabel->setText(tr("Contacting server...")); + QNetworkAccessManager *m_NetworkMngr = new QNetworkAccessManager(this); + m_NetworkMngr->get(QNetworkRequest(url)); + connect(m_NetworkMngr, SIGNAL(finished(QNetworkReply*)), this, SLOT(getUrl(QNetworkReply*))); +} +void Updater::getUrl(QNetworkReply *reply) +{ + if (reply->error() == QNetworkReply::NoError) + { + QString url = toRealURL(reply->attribute(QNetworkRequest::RedirectionTargetAttribute).toString()); + initDownload(url); + } + else if (reply->error() == QNetworkReply::TimeoutError) + { + ui->statusLabel->setText(tr("ERROR: Connection timed out...")); + ui->startButton->setEnabled(true); + } + else + { + ui->statusLabel->setText(tr("An error occurred. Please check your internet connection.")); + ui->startButton->setEnabled(true); + } +} + +void Updater::initDownload(QString url) +{ + ui->statusLabel->setText(tr("Downloading ") + fileName + "..."); + QNetworkAccessManager *m_NetworkMngr = new QNetworkAccessManager(this); + g_reply = m_NetworkMngr->get(QNetworkRequest(url)); + QEventLoop loop; + connect(g_reply, SIGNAL(finished()),&loop, SLOT(quit())); + connect(g_reply, SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(updateProgressBar(qint64, qint64))); + loop.exec(); + + if (g_reply->error() == QNetworkReply::NoError) + { + file.setFileName(QDir::tempPath() + "/" + fileName); + file.open(QIODevice::WriteOnly); + file.write(g_reply->readAll()); + file.close(); + ui->statusLabel->setText(tr("Download completed.")); + int r = QMessageBox::information(this, tr("Information"), tr("Caesium will exit now in order to allow the update to run"), QMessageBox::Ok); + if (r == QMessageBox::Ok) + { + downFinished = true; + g_reply->close(); + delete g_reply; + this->close(); + } + } + else if (g_reply->error() == QNetworkReply::TimeoutError) + { + ui->statusLabel->setText(tr("ERROR: Connection timed out...")); + } + else + { + ui->statusLabel->setText(tr("An error occurred. Please check your internet connection.")); + } + ui->startButton->setEnabled(true); + +} + +void Updater::updateProgressBar(qint64 done, qint64 total) +{ + d = done; + ui->progressBar->setMaximum(total); + ui->progressBar->setValue(done); +} + +void Updater::closeEvent(QCloseEvent *event) +{ + if (downFinished) + { + QProcess *process; + process->startDetached(QDir::tempPath() + "/" + fileName); + u_parent->close(); + } + else if (start_pressed) + { + g_reply->abort(); + } + event->setAccepted(true); +} + +void Updater::on_closeButton_clicked() +{ + this->close(); +} + +void Updater::getChangelog() +{ + QString url = "http://caesium.sourceforge.net/changelog.txt"; + QNetworkAccessManager *networkMngr = new QNetworkAccessManager(this); + networkMngr->get(QNetworkRequest(url)); + connect(networkMngr, SIGNAL(finished(QNetworkReply*)), this, SLOT(getChangelogHTML(QNetworkReply*))); +} + +void Updater::getChangelogHTML(QNetworkReply *reply) +{ + if (reply->error() == QNetworkReply::NoError) + { + QString reply_result = reply->readAll(); + ui->changelogTextEdit->setText(reply_result); + } + else + { + ui->changelogTextEdit->setText("Failed to retrieve the changelog"); + } + reply->close(); +} diff --git a/updater.h b/updater.h new file mode 100644 index 0000000..3e2427e --- /dev/null +++ b/updater.h @@ -0,0 +1,41 @@ +#ifndef UPDATER_H +#define UPDATER_H + +#include +#include +#include +#include +#include +#include + +namespace Ui { + class Updater; +} + +class Updater : public QDialog +{ + Q_OBJECT + +public: + explicit Updater(QWidget *parent = 0); + ~Updater(); + +private: + Ui::Updater *ui; + QFile file; + QWidget *u_parent; + +private slots: + void on_closeButton_clicked(); + void on_startButton_clicked(); + void initGetCurrentVersion(); + void getCurrentVersion(QNetworkReply*); + void getUrl(QNetworkReply*); + void initDownload(QString); + void updateProgressBar(qint64, qint64); + void closeEvent(QCloseEvent *event); + void getChangelog(); + void getChangelogHTML(QNetworkReply*); +}; + +#endif // UPDATER_H diff --git a/updater.ui b/updater.ui new file mode 100644 index 0000000..534e7e3 --- /dev/null +++ b/updater.ui @@ -0,0 +1,120 @@ + + + Updater + + + Qt::WindowModal + + + true + + + + 0 + 0 + 400 + 240 + + + + Caesium updater + + + + :/icons/updates.png:/icons/updates.png + + + false + + + + + + 3 + + + + + + 0 + 0 + + + + Your version is + + + + + + + 0 + + + true + + + + + + + + + + 0 + 0 + + + + Checking version... + + + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + false + + + Start + + + + + + + Close + + + + + + + + + + + + + +